當我跑我的烤臺(WampServer MySQL數據庫),我得到這個錯誤:錯誤:SQLSTATE [42S22]:列未找到:1054
Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Users.user_id' in 'on clause'
If you are using SQL keywords as table column names, you can enable identifier quoting for your database connection in config/app.php.
SQL查詢:
SELECT `Bookmarks`.`id` AS `Bookmarks__id`,
`Bookmarks`.`user_id` AS `Bookmarks__user_id`,
`Bookmarks`.`title` AS `Bookmarks__title`,
`Bookmarks`.`description` AS `Bookmarks__description`,
`Bookmarks`.`url` AS `Bookmarks__url`,
`Bookmarks`.`created` AS `Bookmarks__created`,
`Bookmarks`.`modified` AS `Bookmarks__modified`,
`Users`.`id` AS `Users__id`,
`Users`.`email` AS `Users__email`,
`Users`.`password` AS `Users__password`,
`Users`.`created` AS `Users__created`,
`Users`.`modified` AS `Users__modified`
FROM `bookmarks` `Bookmarks`
INNER JOIN `users` `Users` ON
`Users`.`user_id` = (`Bookmarks`.`user_id`)
LIMIT 20 OFFSET 0
如果要自定義此錯誤消息,請創建src\Template\Error\pdo_error.ctp
。
將其更改爲'Users.id'那是什麼列被稱爲 – RiggsFolly
你們爲什麼加圓括號的'('Bookmarks'.'user_id')'他們沒有意義 – RiggsFolly
@RiggsFolly這是一個CakePHP相關的問題。 CakePHP使用一個查詢生成器來生成特定的SQL,因此OP對像parenthese佈局這樣的東西沒有太多的影響。有時候會有一些不必要的額外括號,因爲編譯器不會花費額外的時間檢查它們是否在技術上需要。 – ndm