[英]Issue with PHP insert to SQL
我對PHP和SQL相當陌生,我一直在關注一些教程。 我正在嘗試將一些簡單的項目插入到現有的表中(是的,名稱在表中是准確的,登錄信息等)
這是我得到的錯誤:
您的SQL語法有誤; 檢查與您的MySQL服務器版本相對應的手冊,以在第1行的“用戶”(“用戶名”,“電子郵件”)“ VALUES”(“測試名”,“ 123”)附近使用正確的語法
這是我的字符串:
mysql_query("INSERT INTO 'user' ('username', 'email') VALUES ('Testname', '123')") or die(mysql_error());
有任何想法嗎?
替換您的代碼:
mysql_query("INSERT INTO `user` (username, email) VALUES ('Testname', '123')") or die(mysql_error());
將您的代碼替換為
mysql_query("INSERT INTO user VALUES ('Testname', '123')") or die(mysql_error());
'和`符號之間有區別,當您需要調用列時,需要用
`符號不能帶有單引號'
mysql_query("INSERT INTO `user` (`username`, `email`) VALUES ('Testname', '123')") or die(mysql_error());
嘗試使用此方法。正確使用表名(用戶)。
mysql_query("INSERT INTO user('username', 'email') VALUES('Testname', '123')") or die(mysql_error());
在MySQL查詢中,引號(')和反引號(`)之間有所不同。 反引號用於引用表,數據庫和列的名稱。 普通引號用於表示給定值是字符串而不是引用。
因此您的查詢應如下所示
mysql_query("INSERT INTO `user` (`username`, `email`) VALUES ('Testname', '123)")
因為“用戶”是保留為“用戶名”的單詞,所以我將它們用反引號引起來,以便mysql知道它是引用,而不是函數或屬性。
與MySQL不同,PHP MYSQL中的字段名和表名不使用單引號
您可以使用
INSERT INTO user (username, email) VALUES ('Testname', '123')
要么
INSERT INTO `user` (`username`, `email`) VALUES ('Testname', '123')
代替'單引號可以使用Tiled .....
如果您不想使用它的話,那么只需使用Tiled作為查詢中的保留字,例如status
或order
等
並按照@Andy所說,使用mysqli驅動程序進行連接,因為在下一個版本中mysql_query將被棄用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.