mysql - Laravel 5 DB::statement return SQLSTATE[42000]: 语法错误或访问冲突:1064 你的 SQL 语法有错误;查看
问题描述
这是声明:
$statement = "CREATE TEMPORARY TABLE homestead.temp_table
AS
SELECT title,content, feed, link, 'date', created_at, updated_at FROM homestead.news ORDER BY 'date' ASC LIMIT 5;
TRUNCATE homestead.news;
INSERT INTO homestead.news (title, content, feed, link, 'date', created_at, updated_at)
SELECT title, content, feed, link, 'date', created_at, updated_at FROM homestead.temp_table;
DROP TEMPORARY TABLE homestead.temp_table;";
try {
DB::statement($statement);
} catch (\Exception $e) {
echo $e->getMessage();
}
代码在 Mysql Workbench 中工作,但不在 laravel 中。请帮忙,这是我在 Stackoverflow 上的第一个问题 :)
完整错误:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TRUNCATE homestead.news; INSERT INTO homestead.news (title, content, feed, l' at line 4 (SQL: CREATE TEMPORARY TABLE homestead.temp_table AS SELECT title,content, feed, link, `date`, created_at, updated_at FROM homestead.news ORDER BY `date` ASC LIMIT 5; TRUNCATE homestead.news; INSERT INTO homestead.news (title, content, feed, link, `date`, created_at, updated_at) SELECT title, content, feed, link, `date`, created_at, updated_at FROM homestead.temp_table; DROP TEMPORARY TABLE homestead.temp_table;)
解决方案
推荐阅读
- typescript - 向浏览器发送组合键
- oracle-data-integrator - 如何恢复 Oracle Data Integrator 12C 中的 ODI 代码更改
- azure-devops - Azure devops 在取消时终止任务运行的进程
- python - IndexError:数组索引过多,trainingframes[h, :, :, :]
- python-3.x - 如何在 Mystic 中应用不等式约束
- python - 线程意外结果中的组合
- google-signin - 重新加载页面后获取当前用户
- javascript - 在 Js 中绘制画布不起作用,但在控制台中没有任何错误
- datetime - BigQuery:从带有时区的日期时间中提取日期
- nginx - Kubernetes 入口/NGINX 重写不匹配,而正则表达式似乎有效