我有三個表:這個SQL查詢將行不通
Clients: Client_ID, Client_Name, Client_Status,
Employees:Emp_ID, Emp_Name, Emp_Role
EmpJobs:Emp_ID, Emp_Name, Client_ID, Client_Name, Hours_Spent, Job_Date
我想插入數據(Hours_Spent,Job_Date)基於在客戶端相關的列和員工
EmpJobs我應該使用插入或更新集?
這是我的代碼:
private void button1_Click(object sender, EventArgs e)
{
SqlConnection sqlConnection = new SqlConnection("Data Source=baker-pc;Initial Catalog=BakodahDB;Integrated Security=True");
SqlCommand sqlCommand = new SqlCommand("");
sqlCommand.Connection = sqlConnection;
sqlConnection.Open();
sqlCommand.CommandText = (@"UPDATE EmpJobs SET (Hours_Spent, Job_Date) VALUES ('" + comboBox3.SelectedItem + "','" + dateTimePicker1.Text + "') WHERE Client_Name='"+comboBox1.SelectedItem+"' AND Emp_Name='"+comboBox2.SelectedItem+"'");
sqlCommand.ExecuteNonQuery();
sqlConnection.Close();
MessageBox.Show("Loged!")
**您的查詢易受攻擊** - 請考慮使用[預先準備的語句](http://bobby-tables.com/csharp.html)。你的更新查詢也不正確 - 你已經遵循了插入查詢格式,所以將'insert'替換爲'insert'就行了 - 雖然它仍然很脆弱:) –
可以肯定的是,通過「我的SQL查詢」,你意思是*您的*(SQL Server兼容)SQL查詢,而不是MySQL查詢? – GolezTrol
如果數據存在,並且您想要更改它然後使用更新。如果記錄不存在,則使用插入。插入與創建新文件並保存相似。更新是打開文件,修改它,然後保存它。 – CodingYoshi