如何将C#应用程序连接到SQLite数据库
我想连接到SQLite数据库。请给我示例代码哪些工作。此外,我想用database.I用这个代码链接datagridview的,但它不工作:如何将C#应用程序连接到SQLite数据库
private DataTable dt;
public Form1()
{
InitializeComponent();
this.dt = new DataTable();
}
private SQLiteConnection SQLiteConnection;
private void DataClass()
{
SQLiteConnection = new SQLiteConnection("Data Source=PasswordManager.s3db;Version=3;");
}
private void GetData()
{
SQLiteDataAdapter DataAdapter;
try
{
SQLiteCommand cmd;
SQLiteConnection.Open(); //Initiate connection to the db
cmd = SQLiteConnection.CreateCommand();
cmd.CommandText = "select*from PasswordManager;"; //set the passed query
DataAdapter = new SQLiteDataAdapter(cmd);
DataAdapter.Fill(dt); //fill the datasource
dataGridView1.DataSource = dt;
}
catch(SQLiteException ex)
{
//Add your exception code here.
}
SQLiteConnection.Close();
您可以使用System.Data.SQLite ADO.NET提供者。一旦你下载和引用的程序集,这是非常简单的ADO.NET代码:
using (var conn = new SQLiteConnection(@"Data Source=test.db3"))
using (var cmd = conn.CreateCommand())
{
conn.Open();
cmd.CommandText = "SELECT id FROM foo";
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
int id = reader.GetInt32(reader.GetOrdinal("id"));
...
}
}
}
提供的链接已死亡。看来,至少有两个地方可以获得这个软件包。 https://system.data.sqlite.org/index.html/doc/trunk/www/index.wiki,另一个是位于https://www.nuget.org/packages/System.Data.SQLite的nuget站点 – 2017-05-05 17:43:08
除了由达林提供的答案,有SQLite中没有“创建数据库”命令(我记得是什么)。当你启动一个“SQLiteConnection”时,如果给定的数据库(.db3)不存在,它会自动创建它......然后你可以创建你的表。
我知道如何做到这一点,所以对我来说这不是问题 – Nikalas1111 2012-01-15 18:05:25
@ Nikalas1111,没问题,但对于其他可能对SQLite不熟悉并且不了解引擎和创建连接的人来说,可能会帮助他们找到那个缺失的部分当我最初开始使用时,我不认为这是很好的记录:) – DRapp 2012-01-15 21:33:47
你到目前为止尝试过什么?此外,请参阅[这个问题](http://stackoverflow.com/questions/26020/what-is-the-best-way-to-connect-and-use-a-sqlite-database-from-c-sharp) – 2012-01-15 13:47:15
你有[google搜索](https://www.google.com/?#q=c%23%20sqlite%20example)吗? – Jon 2012-01-15 13:48:07