0
データベースに最後に挿入された行を選択します。私がデータベースにデータを挿入すると、datagridviewがリフレッシュされ、最後に挿入した行が検索されます。私の問題は、最後の挿入行を選択する方法がわからないことです。私は新しいアイテムがデータベースに追加されて保存ボタンをクリックすると、私は最後のインサートIDとどのように今 Datagridview最後の挿入行を選択します。データベース経由で挿入します。
にを持って、グリッドが更新され、彼は新しいrow.Howを表示する自動にID 30のようなデータを選択した行のセーブ成功の後グリッド内
private void sacuvajPromeneButton_Click(object sender, EventArgs e)
{
using (var pleaseWaitForm = new Loading())
{
pleaseWaitForm.Show();
Application.DoEvents();
using (var conn = new MySqlConnection(Database.connStringStatic))
{
try
{
conn.Open();
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.Parameters.AddWithValue("@ime", primalac_ime_textBox.Text);
cmd.Parameters.AddWithValue("@prezime", primalac_prezime_textBox.Text);
cmd.Parameters.AddWithValue("@grupa_id", 1);
cmd.Parameters.AddWithValue("@ulica", primalac_ulica_textBox.Text);
cmd.Parameters.AddWithValue("@grad", primalac_grad_textBox.Text);
cmd.Parameters.AddWithValue("@postanski_br", primalac_postanskiBroj_textBox.Text);
cmd.Parameters.AddWithValue("@jmbg", posiljalac_jmb_textBox2.Text);
cmd.Parameters.AddWithValue("@telefon", primalac_kontakt_textBox.Text);
cmd.Parameters.AddWithValue("@telefon_2", telefon2_textBox1.Text);
cmd.Parameters.AddWithValue("@email", posiljalac_email_textBox3.Text);
cmd.Parameters.AddWithValue("@napomena", napomenarichTextBox1.Text);
cmd.Parameters.AddWithValue("@datum_kreiranja", DateTime.Now);
// cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "CALL kreiraj_korisnika(@ime, @prezime, @grupa_id, @ulica, @grad, @postanski_br, @jmbg, @telefon, @telefon_2, @email, @napomena, @datum_kreiranja)";
cmd.ExecuteNonQuery();
long lastInsertId= cmd.LastInsertedId;
// Refresh grid
dataGridView1.DataSource = null;
bs.DataSource = GetDat("SELECT id, ime, prezime, ulica, grad, postanski_br, telefon FROM korisnici ORDER by id");
dataGridView1.DataSource = bs;
// Test selecting
pleaseWaitForm.Close();
MessageBox.Show("User created.");
// Now select that new created user in grid
// dataGridView1.Rows[4].Selected = true;
this.Activate();
sacuvajPromeneButton.Visible = false;
}
}
catch(MySqlException ex)
{
MessageBox.Show(ex.Message);
}
}
}
}