09-07-19, 08:53 PM
(09-07-19, 03:45 PM)asemshahen5 كتب : فقط ضع مكان الإجراء المخزن استعلام الاضافة او التعديل أي تغييرشكرا لردك استاذي الغالى
cmd.CommandText = "your sql commend";
cmd.CommandType = CommandType.Text;
فقط لا غيير .
خبرتى ضعيفه لو من الممكن
كود الاضافه هو
إقتباس :private void dgvEmployee_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (dgvEmployee.CurrentRow != null)
{
using (SqlConnection sqlCon = new SqlConnection(connectionString))
{
sqlCon.Open();
DataGridViewRow dgvRow = dgvEmployee.CurrentRow;
SqlCommand sqlCmd = new SqlCommand("EmployeeAddOrEdit", sqlCon);
sqlCmd.CommandType = CommandType.StoredProcedure;
if (dgvRow.Cells["txtEmployeeID"].Value == DBNull.Value)//Insert
sqlCmd.Parameters.AddWithValue("@EmployeeID", 0);
else//update
sqlCmd.Parameters.AddWithValue("@EmployeeID", Convert.ToInt32(dgvRow.Cells["txtEmployeeID"].Value));
sqlCmd.Parameters.AddWithValue("@Name", dgvRow.Cells["txtName"].Value == DBNull.Value ? "" : dgvRow.Cells["txtName"].Value.ToString());
sqlCmd.Parameters.AddWithValue("@PositionID", Convert.ToInt32(dgvRow.Cells["cbxPosition"].Value == DBNull.Value ? "0" : dgvRow.Cells["cbxPosition"].Value.ToString()));
sqlCmd.Parameters.AddWithValue("@Office", dgvRow.Cells["txtOffice"].Value == DBNull.Value ? "" : dgvRow.Cells["txtOffice"].Value.ToString());
sqlCmd.Parameters.AddWithValue("@Age", Convert.ToInt32(dgvRow.Cells["txtAge"].Value == DBNull.Value ? "0" : dgvRow.Cells["txtAge"].Value.ToString()));
sqlCmd.ExecuteNonQuery();
PopulateDataGridView();
}
}
}
والاجراء المخزن هو
إقتباس :اتمنى ااضافه لاجراء المخزن ضمن الكود بحيث يكون االكود يعمل بدون اجراء مخزنCREATE PROC EmployeeAddOrEdit
@EmployeeID int,
@Name varchar(100),
@PositionID int,
@Office varchar(50),
@Age int
AS
IF @EmployeeID = 0
INSERT INTO Employee(Name,PositionID,Office,Age)
VALUES (@Name,@PositionID,@Office,@Age)
ELSE
UPDATE Employee
SET
Name = @Name,
PositionID = @PositionID,
Office = @Office,
Age = @Age
WHERE EmployeeID = @EmployeeID
وجزك الله كل خير
دا رابط فيديو واخد منه الكود
https://www.youtube.com/watch?v=cQQy_IfFddg
يعني اريد نفس هذا الكود الموجود بالشرح ولكن بدون استخدام اجراءات مخزنه
اتمنى تكون الفكره وصلت
