Click here to Skip to main content
15,918,742 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
C#
private void btn_Delete_Click(object sender, EventArgs e)
        {
           
            if (txt_mobile_no.Text == "")
            {
                DialogResult Case = MessageBox.Show(".رقم الجوال فارغة", "سجل فارغ", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                EmpID();
                string sql = "DELETE emp.*, emplogin.* FROM tbl_employee_details as [emp] LEFT JOIN tbl_user_login_access as [emplogin] ON emp.emp_id = emplogin.emp_id where emp.emp_id =" + eid + "";
                Execute(sql);
                DialogResult save2 = MessageBox.Show(".يتم حذف تفاصيل بنجاح", "حفظ", MessageBoxButtons.OK, MessageBoxIcon.Information);
                BEmployee();
                EmployeeID();
                BindLogin();
                Clear();
            }
        }

C#
public void Execute(String sql)
      {
          cmd = new OleDbCommand(sql, conn);
          cmd.ExecuteNonQuery();
      }
Posted
Updated 14-May-13 4:55am
v2

1 solution

You appear to have no value at all in eid, so the string just evaluates to:
DELETE emp.*, emplogin.* FROM tbl_employee_details as [emp] LEFT JOIN tbl_user_login_access as [emplogin] ON emp.emp_id = emplogin.emp_id where emp.emp_id =
SQL quite rightly throws a hissy fit and complains.

Check the variable content in the debugger, and please, stop doing it like that. Do not concatenate strings to build a SQL command. It leaves you wide open to accidental or deliberate SQL Injection attack which can destroy your entire database. Use Parametrized queries instead.
 
Share this answer
 
Comments
Steve44 14-May-13 20:16pm    
I second the parameterized query recommendation! Hopefully concatenated SQL will one day be eradicated like an infectious disease.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900