【发布时间】:2014-07-10 23:37:47
【问题描述】:
我对 sqlite 有问题! 在我的 c# 应用程序中,我使用了一个基于 sqlite 的小数据库,我可以选择并查看数据库数据,但问题是,当我尝试将记录插入表中时,我在程序中看到了它,它运行良好,但添加到我的数据库,但是当我关闭程序并打开数据库时,没有任何保存:(当我使用我的应用程序时,这似乎已添加到数据库中,但实时我正在使用 firefox 插件查看数据库,或者当关闭和打开应用程序时没有保存任何内容.
SQLiteConnection ObjConnection = new SQLiteConnection("Data Source=Data/data.db3;");
private void button1_Click(object sender, EventArgs e)
{
SQLiteCommand ObjCommand = new SQLiteCommand("SELECT * FROM PERSON", ObjConnection);
ObjCommand.CommandType = CommandType.Text;
SQLiteDataAdapter ObjDataAdapter = new SQLiteDataAdapter(ObjCommand);
DataSet dataSet = new DataSet();
ObjDataAdapter.Fill(dataSet, "Person");
dataGridView1.DataSource = dataSet.Tables["Person"];
}
private void button2_Click(object sender, EventArgs e)
{
string name = textBox1.Text;
string last = textBox2.Text;
string q1 = "INSERT INTO Person(Firstname,Lastname) VALUES(?,?)";
SQLiteCommand cmd1 = new SQLiteCommand(q1, ObjConnection);
cmd1.Parameters.AddWithValue("@SongName",name);
cmd1.Parameters.AddWithValue("@ArtistName",last);
ObjConnection.Open();
cmd1.ExecuteNonQuery();
ObjConnection.Close();
SQLiteCommand ObjCommand = new SQLiteCommand("SELECT * FROM PERSON", ObjConnection);
ObjCommand.CommandType = CommandType.Text;
SQLiteDataAdapter ObjDataAdapter = new SQLiteDataAdapter(ObjCommand);
DataSet dataSet = new DataSet();
ObjDataAdapter.Fill(dataSet, "Person");
dataGridView1.DataSource = dataSet.Tables["Person"];
}
private void button3_Click(object sender, EventArgs e)
{
ObjConnection.Open();
ObjConnection.ChangePassword("123");
ObjConnection.Close();
}
【问题讨论】:
-
如果您每行写一个语句,这将有助于提高可读性...
-
尝试打开并提交一个事务