Возникли проблемы с использованием простого приращения столбца ID
Итак моя проблема в том что когда я делаю начальную запись добавления программа которую я делаю автоматически пропускает первую которая является ID 1 и начинает добавлять вот так 2, 3, 4, 5, 6.
вот мой код:
Dim i As Integer = 0 I += 1 Try Dim sqlcon As New SqlConnection("mysqlstring") Dim sqladapt = New SqlDataAdapter("Select * from [Table]", sqlcon) sqlcon.Open() Dim cmd As SqlClient.SqlCommand Dim sql As String = "insert into [Table] values(@ID,@Question,@Answers,@Howtowork,@Chapter)" cmd = New SqlClient.SqlCommand(sql, sqlcon) ' Make sure that all tables have the same type of information that can be entered, if not you will recieve an error. cmd.Parameters.AddWithValue("@ID", DataGridView1.Rows.Count + I) cmd.Parameters.AddWithValue("@Question", TextBox2.Text) cmd.Parameters.AddWithValue("@Answers", TextBox3.Text) cmd.Parameters.AddWithValue("@Howtowork", TextBox4.Text) cmd.Parameters.AddWithValue("@Chapter", TextBox5.Text) cmd.ExecuteNonQuery() sqlcon.Close() MessageBox.Show("New Record Added") Catch ex As Exception End Try
Я подумал, что это, вероятно, простое решение, которое я не вижу. Все, что я пытаюсь сделать, это добавить в уникальный столбец ID с шагом 1. моя база данных должна начинаться с 1 и идти оттуда.
Что я уже пробовал:
Поэтому я попытался вставить первую запись, просто добавив ее в таблицу вручную перед началом отладки. Вот что происходит 1, 3, 4, 5, 6. независимо от того, где я пытаюсь начать запись, она всегда пропускает одну, а после пропуска все в порядке.
[no name]
Используйте фактический столбец идентификаторов в своей базе данных, и вам вообще не придется иметь с этим дело. Вот для чего нужны эти колонки.