在C#中可以使用代码在SQLite数据库中创建数据表,在创建数据表之前先用代码判断数据库中的数据表是否存在。
需要用到文件包括:System.Data.SQLite.dll和SQLite.Interop.dll
使用Visual Studio创建的项目为WindowsForm(.NET Framework),代码如下:
using System;
using System.Windows.Forms;
using System.Data.SQLite;
using System.IO;
namespace HovertreeSQLite
{
public partial class HovertreeForm : Form
{
string h_hovertreeFile;
public HovertreeForm()
{
InitializeComponent();
h_hovertreeFile = System.Environment.CurrentDirectory + "\\HovertreeDb.db";
}
private void button_CreateDb_Click(object sender, EventArgs e)
{
if (File.Exists(h_hovertreeFile))
{
MessageBox.Show("已存在:" + h_hovertreeFile);
return;
}
else
{
MessageBox.Show("准备创建:" + h_hovertreeFile);
SQLiteConnection.CreateFile(h_hovertreeFile);
MessageBox.Show("已创建:" + h_hovertreeFile);
}
}
//创建SQLite数据表
private void button_CreateTable_Click(object sender, EventArgs e)
{
SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=" + h_hovertreeFile + ";Version=3;");
m_dbConnection.Open();
//先判断数据表是否存在
string m_sqlExist = "SELECT count(*) FROM sqlite_master WHERE type='table' AND name = 'hovertree';";
SQLiteCommand m_command = new SQLiteCommand(m_sqlExist, m_dbConnection);
object o_count = m_command.ExecuteScalar();
if(Convert.ToInt32(o_count) ==1)
{
MessageBox.Show("数据表已存在");
return;
}
//创建数据表
string m_sql = "create table hovertree (name varchar(20), score int)";
m_command.CommandText = m_sql;
m_command.ExecuteNonQuery();
MessageBox.Show("数据表已创建");
}
}
}
本代码运行有效,运行后使用SQLiteStudio查看,创建表成功。
本示例代码可成功运行,但仅供参考。