我有一個名爲ID和保存按鈕的文本框。我想簡單地存儲在SQLite數據庫文件中,無論我在文本框中寫入什麼,只要點擊保存按鈕。SQLite不保存記錄
該代碼正在編譯和程序運行沒有任何錯誤,但我沒有看到任何記錄保存在我的數據庫文件(file1.db),我在同一個應用程序下創建。
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
private SQLiteConnection sqlcon;
private SQLiteCommand sqlcmd;
private SQLiteDataAdapter dataBase;
private DataSet dataSet = new DataSet();
private DataTable dataTable = new DataTable();
public Form1()
{
InitializeComponent();
}
private void createDataBase()
{
dataBase = new SQLiteDataAdapter();
}
private void ExecuteQuery(string txtQuery)
{
using (SQLiteConnection sqlcon = new SQLiteConnection("Data Source=file1.db"))
{
using (SQLiteCommand sqlcmd = sqlcon.CreateCommand())
{
sqlcon.Open();
sqlcmd.CommandText = txtQuery;
sqlcmd.ExecuteNonQuery();
}
}
}
private void createDataTable()
{
dataTable = new DataTable();
string txtQuery1 = "CREATE TABLE RECORDS (ID varchar(255))";
ExecuteQuery(txtQuery1);
}
private void button1_Click(object sender, EventArgs e)
{
string txtQuery2 = "INSERT INTO RECORDS (ID) VALUES ('" + textBox1.Text + "')";
ExecuteQuery(txtQuery2);
}
+1。良好的發現 - 我發現了無效的SQL,但直到看到其他人發佈了答案之後才錯過了調用ExecuteQuery的失敗。 :-) –
嗨克里斯。我修改了代碼並添加了所有你指出的東西。除了現在,它在sqlcmd.ExecuteNonQuery()中給出錯誤;通過告訴沒有這樣的「記錄」表存在。我粘貼創建數據庫的方法,並在執行查詢方法之前將其創建爲可執行的....您指出問題所在?謝謝 –
沒關係,我把它整理出來了。但是,我看不到保存在file1.db文件中的實際記錄。是因爲他們真的得救了嗎,還是我看錯了地方?謝謝! –