Jak działa kod połączenia z bazą danych?

0

Mam taki kod i nie wiem jak to się dzieje, że dane z dataGridView1 zapisywane są w bazie. W buttonie update nie przecież zapisania danych z dataGridView1.

 
        OracleConnection conn;
        OracleDataAdapter adap;
        DataSet ds;
        OracleCommandBuilder cmbl;

//Load
        private void button2_Click(object sender, EventArgs e)
        {
            string connectionString = "Data Source=(DESCRIPTION = " +
                "(ADDRESS = (PROTOCOL = TCP)(HOST = " + textBox1.Text + ")(PORT = " + textBox2.Text + "))" +
                "(CONNECT_DATA =" +
                "(SERVER = DEDICATED)" +
                "(SERVICE_NAME = " + textBox3.Text + "))" +
                "); User ID=" + textBox4.Text + ";Password=" + textBox5.Text + ";";

            conn = new OracleConnection(connectionString);
            conn.Open();

            adap = new OracleDataAdapter("SELECT * FROM EMPLOYEES", conn);
            ds = new DataSet();
            adap.Fill(ds, "EMPLOYEES");
            dataGridView1.DataSource = ds.Tables[0];
        }
//Update
        private void button3_Click(object sender, EventArgs e)
        {
            cmbl = new OracleCommandBuilder(adap);
            adap.Update(ds, "EMPLOYEES");
        }
0

przeciez przekazujesz dataset. A datagrid jest zbindowany z tym datasetem ktory przekazujesz do bazy.

0

Jak mogę do tego kodu dać funkcję transakcji? Kod poniżej przedstawia początek ale nie wiem jak to mam zrobić z moim kodem.

 
            OracleCommand command = conn.CreateCommand();
            OracleTransaction transaction;
            transaction = conn.BeginTransaction(IsolationLevel.ReadCommitted);
            command.Transaction = transaction;

1 użytkowników online, w tym zalogowanych: 0, gości: 1