Я пытаюсь использовать WPF для создания базы данных и вставки данных в таблицу.Вставить данные в SQLite
Я использую кнопку для вставки 4 разных данных в таблицу, работает отлично, но я могу вставить только «одни» данные в таблицу, независимо от того, сколько раз я нажимаю кнопку.
Вот мой код:
private void Button_Click(object sender, RoutedEventArgs e)
{
SQLiteConnection sqlite_conn;
SQLiteCommand sqlite_cmd;
SQLiteDataReader sqlite_datareader;
sqlite_conn = new SQLiteConnection("Data Source=imageDB.db;Version=3;New=True;Compress=True;");
sqlite_conn.Open();
sqlite_cmd = sqlite_conn.CreateCommand();
sqlite_cmd.CommandText = "CREATE TABLE image_table (id integer, name varchar(100), location varchar(500), appendix varchar(500));";
sqlite_cmd.ExecuteNonQuery();
string key = nowKey.ToString();
string name = dbNameBox.Text;
string location = dbLocationBox.Text;
string app1 = dbNotebox.Text;
sqlite_cmd.CommandText = "INSERT INTO image_table (id, name, location, appendix) VALUES ('" + nowKey.ToString() + "', '" + name + "', '" + location + "', '" + app1 + "');";
sqlite_cmd.ExecuteNonQuery();
sqlite_cmd.CommandText = "SELECT * FROM image_table";
sqlite_datareader = sqlite_cmd.ExecuteReader();
while (sqlite_datareader.Read())
{
string data = sqlite_datareader.GetString(3);
MessageBox.Show(data);
}
sqlite_conn.Close();
}
Я не использовал «автоинкремент» ключевое слово здесь, ни ни «первичный ключ». Я попытался будут сдвинуты
sqlite_conn = new SQLiteConnection("Data Source=imageDB.db;Version=3;New=True;Compress=True;");
из функции, но она по-прежнему не работает.
Прошу, дайте мне совет! Действительно оценили Спасибо заранее!
на каждый клик вы создаете таблицу с нуля. Разве вы не должны создавать таблицу один раз, а затем вставлять данные в одну и ту же таблицу впоследствии? Так что происходит, когда вы нажимаете кнопку, ваша таблица создается снова, перезаписывая то, что уже было там. – Ehsan
WPF несет ответственность за * визуализацию и интерактивность * поведение _only_. Все в вашем обработчике событий является простым старым C#. – Gusdor
Да, и я использую WPF в другом разделе моей программы, это только раздел, который заставил меня по-настоящему запутать и запастись мной. – Alanight