У меня есть простая программа, написанная на c #, и я использую SQLite для сохранения списка профилей (электронные письма, пароли). Все отлично работает, пока я не закрою программу и не открою ее снова. Когда я делаю это, таблица пуста. Этот код находится в моем конструкторе форм, который запускается первым при загрузке программы (это программа с одной формой, очень простая). Я использую библиотеку System.Data.SQLite . Я могу увидеть файл в папке моего проекта (bin / debug / ..). Кто-нибудь может объяснить, почему эта информация не сохраняется и не доступна для чтения при повторном открытии программы?
SQLiteConnection.CreateFile("MyDatabase.db");
m_dbConnection = new SQLiteConnection("Data Source=MyDatabase.db;Version=3;");
m_dbConnection.Open();
string sql = "CREATE TABLE " + profileTable + " (" + emailCol + " VARCHAR(320), " + passwordCol + " VARCHAR(30))";
SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
command.ExecuteNonQuery();
sql = "SELECT * FROM "+profileTable+" order by "+emailCol+" desc";
command = new SQLiteCommand(sql, m_dbConnection);
SQLiteDataReader reader = command.ExecuteReader();
while (reader.Read())
{
emailProfileListBox.Items.Add(reader[emailCol] as String);
}
Вот мой оператор INSERT, который вставляет и был проверен.
string sql1 = "INSERT INTO "+profileTable+" ("+emailCol+", "+passwordCol+") VALUES (\'"+from_email_address.Text+"\', \'"+passwordTextBox.Text+"\')";
SQLiteCommand command1 = new SQLiteCommand(sql1, m_dbConnection);
command1.ExecuteNonQuery();