Обновление БД по закрытию

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Здесь мы будем обновлять БД перед закрытием.
private void FormMain_FormClosing(object sender, FormClosingEventArgs e)
{
// текст запроса
string query = "SELECT COUNT(db_title) FROM Notes";
// создаем объект OleDbCommand для выполнения запроса к БД MS Access
OleDbCommand command = new OleDbCommand(query, myConnection);
// выполняем запрос и выводим результат в textBox1
int numberOfFields = Convert.ToInt32(command.ExecuteScalar().ToString());
// Проверяем, надо ли создать новую запись или апдейтнуть старую:
for (int i = 0; i < dataGridView1.Rows.Count; ++i)
{
bool wasUpdated = false;
for (int j = 0; j < numberOfFields; j++)
{
query = "SELECT db_title FROM Notes WHERE db_id = " + j;
command = new OleDbCommand(query, myConnection);
string dbTitle = command.ExecuteScalar().ToString();
object appTitle = dataGridView1[0, i].Value;
if (Convert.ToString(appTitle) == dbTitle)
{
// TO DO UPDATE CODE
wasUpdated = true;
break;
}
}
if (!wasUpdated)
{
// TO DO INSERT CODE
}
}
}