首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 1064 語法錯誤實戰:少一個右括號導致 INSERT 失敗

     編輯:MySQL 資料庫相關知識

錯誤現場

SQL: INSERT INTO uploader.uploader_users (username, password, email, reg_date)
VALUES ('sa' ,'40c76244e235aa23e73acb4a457f9748' ,'sa@gmail.com' ,'1132236495'
Error: You have an error in your SQL syntax... near '' at line 2
Errno: 1064

問題代碼

$db->query("INSERT INTO uploader.uploader_users (username, password, email, reg_date)
    VALUES ('$bloginfo[username]' ,'$bloginfo[password]' ,'$bloginfo[email]' ,'$bloginfo[regdate]'");

根因

VALUES 子句缺少結束右括號,導致 SQL 解析器在語句末尾遇到意外結束報錯。

修正代碼

$db->query("INSERT INTO uploader.uploader_users (username, password, email, reg_date)
    VALUES ('$bloginfo[username]' ,'$bloginfo[password]' ,'$bloginfo[email]' ,'$bloginfo[regdate]')");

避坑建議

  • 使用 IDE/編輯器的括號匹配高亮功能
  • 複雜 SQL 建議先在客戶端工具測試再嵌入代碼
  • 採用參數化查詢(Prepared Statement)可避免拼接錯誤並防注入
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved