我有三个表:这个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