I have one form where i collect the data and data should be inserted in 3 different database tables.
Here is the code :
Code:
System.Data.SqlClient.SqlConnection conn;
System.Data.SqlClient.SqlDataAdapter da;
DataSet ds;
string strConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\myDatabase.mdf;Integrated Security=True;User Instance=True";
conn = new System.Data.SqlClient.SqlConnection();
conn.ConnectionString = strConnectionString;
try
{
conn.Open();
da = new SqlDataAdapter("SELECT * FROM Employee", conn);
SqlCommandBuilder cb;
cb = new SqlCommandBuilder(da);
DataTable TEmployee = ds.Tables["Employee"];
DataRow dRow = TEmployee.NewRow();
dRow[1] = textBox1.Text);
dRow[2] = textBox2.Text;
dRow[3] = textBox3.text;
dRow[4] = Convert.ToInt16(textBox4.text);
TEmployee.Rows.Add(dRow);
da.Update(ds, "Employee");
da = new SqlDataAdapter("SELECT * FROM Job", conn);
cb = new SqlCommandBuilder(da);
DataTable TJob = ds.Tables["Job"];
DataRow dRow1 = TJob.NewRow(); // error is in this line
dRow1[1] = cbSelection.Text;
dRow1[2] = textBox5.Text;
dRow1[3] = textBox6.Text;
TJob.Rows.Add(dRow1);
da.Update(ds, "Job");
int nCount = listView1.Items.Count;
if (nCount > 0)
{
for (int i = 0; i < nCount; i++)
{
int nContact = i + 1;
da = new SqlDataAdapter("SELECT * FROM Contact", conn);
cb = new SqlCommandBuilder(da);
DataTable TContact = ds.Tables["Contact"];
DataRow dRow2 = TContact.NewRow();
dRow2[1] = nContact;
dRow2[2] = textBox7.Text;
dRow2[3] = listView1.Items[i].SubItems[1].Text;
dRow2[4] = listView1.Items[i].SubItems[1].Text;
TContact.Rows.Add(dRow2);
da.Update(ds, "Contact");
}
}
conn.Close();
conn.Dispose();
ds.Dispose();
ds.Dispose();
}
catch (Exception ex)
{
MessageBox.Show("Error : \n" + ex, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}

