كود :
private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < dgvEmployee.Rows.Count - 1; i++)
{
try
{
using (SqlConnection sqlCon = new SqlConnection(@"server=.; Database=Accounts; Integrated Security=true"))
{
String sqlstrdd = "select * from Employee where EmployeeID='" + dgvEmployee.Rows[i].Cells[0].Value + "'";
System.Data.SqlClient.SqlDataAdapter dt1 = new System.Data.SqlClient.SqlDataAdapter(sqlstrdd, sqlCon);
DataTable dset1 = new DataTable();
dset1.Clear();
dt1.Fill(dset1);
//----------------------------------------
SqlCommand sqlCmd = new SqlCommand();
sqlCmd.CommandType = CommandType.Text;
string SqlStr = string.Empty;
if (dset1.Rows.Count == 0)//Insert
{
SqlStr = "INSERT INTO Employee(Name,PositionID,Office,Age)VALUES (@Name,@PositionID,@Office,@Age)";
sqlCmd = new SqlCommand(SqlStr, sqlCon);
sqlCmd.Parameters.AddWithValue("@Name", dgvEmployee.Rows[i].Cells[1].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[1].Value.ToString());
sqlCmd.Parameters.AddWithValue("@PositionID", Convert.ToInt32(dgvEmployee.Rows[i].Cells[2].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[2].Value.ToString()));
sqlCmd.Parameters.AddWithValue("@Office", dgvEmployee.Rows[i].Cells[3].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[3].Value.ToString());
sqlCmd.Parameters.AddWithValue("@Age", Convert.ToInt32(dgvEmployee.Rows[i].Cells[4].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[4].Value.ToString()));
}
else//update
{
SqlStr = "UPDATE Employee SET Name = @Name,PositionID = @PositionID,Office = @Office,Age = @Age WHERE EmployeeID = @EmployeeID";
sqlCmd = new SqlCommand(SqlStr, sqlCon);
sqlCmd.Parameters.AddWithValue("@EmployeeID", Convert.ToInt32(dgvEmployee.Rows[i].Cells[0].Value));
sqlCmd.Parameters.AddWithValue("@Name", dgvEmployee.Rows[i].Cells[1].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[1].Value.ToString());
sqlCmd.Parameters.AddWithValue("@PositionID", Convert.ToInt32(dgvEmployee.Rows[i].Cells[2].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[2].Value.ToString()));
sqlCmd.Parameters.AddWithValue("@Office", dgvEmployee.Rows[i].Cells[3].Value == DBNull.Value ? "" : dgvEmployee.Rows[i].Cells[3].Value.ToString());
sqlCmd.Parameters.AddWithValue("@Age", Convert.ToInt32(dgvEmployee.Rows[i].Cells[4].Value == DBNull.Value ? "0" : dgvEmployee.Rows[i].Cells[4].Value.ToString()));
}
sqlCon.Open();
sqlCmd.ExecuteNonQuery();
sqlCon.Close();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
}
PopulateDataGridView();
MessageBox.Show("Win............");
}
لدي المشروع مستخدم به عدد كبير من الداتا فيو ويتم حفظ وتعديل البيانات من خلاال هذا الكود مع تغيير اسماء الجداول واسماء الحقول