ADD附近的SQL语法错误

时间:2011-01-11 10:14:41

标签: sql mysql

我一直盯着这个东西一段时间,我似乎无法弄清楚语法错误是什么。我之前一直处于这种状况,最后一次是如此令人难以置信的简单事后我感到愚蠢。但这是另一次尝试:

//update database
$q = "
 UPDATE 
  users 
 SET 
  id='$edit_id',
  name='$edit_name',
  bdm='$edit_bdm',
  add='$edit_add',
  pc='$edit_pc',
  location='$edit_outletL',
  style='$edit_outletS',
  coName='$edit_coName',
  coNum='$edit_coTel',
  coEmail='$edit_coEmail',
  password='$edit_pass'
 WHERE
  id='$query_title'
";
$edit_query = mysql_query($q) or die("Database Query Error: ". mysql_error());

数据库查询错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'add='Llancadle, Nr Barry', pc='CF62 3AQ', location='rural', style='food', coName' at line 1

4 个答案:

答案 0 :(得分:4)

您需要反引用添加,因为它是关键字:

`add` = ...

答案 1 :(得分:3)

我认为add在MySQL中是reserved word

答案 2 :(得分:2)

你的问题是“添加”是一个MySQL保留字。见:http://dev.mysql.com/doc/refman/5.0/en/reserved-words.html。如果您有一个名为“add”的列,请将其转义为:

//update database
    $edit_query = mysql_query("UPDATE users SET id='$edit_id', name='$edit_name', bdm='$edit_bdm', `add`='$edit_add', pc='$edit_pc', location='$edit_outletL', style='$edit_outletS', coName='$edit_coName', coNum='$edit_coTel', coEmail='$edit_coEmail', password='$edit_pass' WHERE id='$query_title'") or die("Database Query Error: ". mysql_error());

答案 3 :(得分:2)

正如bobby在评论中指出的那样,add是一个mysql保留字

`add`='$edit_add'

会告诉mysql你在谈论一个专栏