代码之家  ›  专栏  ›  技术社区  ›  medk

简单mySQLi Insert查询返回语法错误

  •  0
  • medk  · 技术社区  · 3 年前

    有人能找到我吗?我真的很生气,错误在哪里

    $query = 'INSERT INTO mk_pay_wages (u_id, year_month, wage) VALUES (14, "2021-06", 900)';
    
    echo $query . '<br>';
    
    $mysqli->query($query) or die ($mysqli->error);
    

    这是mySQL表:

    enter image description here

    最后是它的输出:

    将值(14,“2021-06”,900)插入mk\ u pay\ WANGES(u\ id,年\月,工资)

    SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获得正确的语法,以便在第1行使用接近“年\月,工资)值(14,“2021-06”,900)”

    1 回复  |  直到 3 年前
        1
  •  2
  •   Bill Karwin    3 年前

    YEAR_MONTH 是MySQL中的保留关键字:

    https://dev.mysql.com/doc/refman/5.7/en/keywords.html#keywords-5-7-detailed-Y

    只有将保留关键字括在后面的记号中,才能将其用作标识符:

    INSERT INTO mk_pay_wages (u_id, `year_month`, wage) ...