php - MySql + InnoDB + PHP單引號識別?

  显示原文与译文双语对照的内容
138 1

好,我最近轉換了一些表到vmkernel存儲引擎,每當在INSERT語句的列列表中使用單引號時,

INSERT INTO 'Table' ('Col1', 'Col2') VALUES ('Val1', 'Val2')

當我疲勞地使用rtc生成正確的語句時,它看起來相同,所以我在應用程序中粘貼它。然後我的下一條語句出現了同樣的錯誤,所以我開始懷疑。我發現這個問題是,查詢需要一個回調而不是單引號,而不是整個事件。

INSERT INTO `Table` (`Col1`, `Col2`) VALUES ('Val1', 'Val2')

works,所以它不像MySql不理解單引號。怎麼搞的? 露西我也不能像前面那樣用 MyISAM ( IE:表( Col1,Col2 ) )

时间:原作者:0个回答

89 4

這是因為單引號表示字元串,而反引號表示 database/table/column 標識符轉義。

刪除引號會導致錯誤,因為 TABLE 是保留字,因這裡要將它的作為表名,必須包含引號。

原作者:
65 3

在字元串值周圍加上單引號,在對象名稱周圍使用反引號。除非你的表/列名是保留字,否則在技術上不需要引發符。

原作者:
...