语法错误或访问冲突:1064 您的 SQL 语法有错误;对应于正确语法的 MySQL 服务器版本
Posted
技术标签:
【中文标题】语法错误或访问冲突:1064 您的 SQL 语法有错误;对应于正确语法的 MySQL 服务器版本【英文标题】:Syntax error or access violation: 1064 You have an error in your SQL syntax;that corresponds to your MySQL server version for the right syntax 【发布时间】:2021-11-15 06:20:59 【问题描述】:public function up()
Schema::table('coupons', function (Blueprint $table)
$table->date('expiry_date')->default(DB::raw('CURRENT_DATE'));
);
照亮\数据库\查询异常
SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 mysql 服务器版本相对应的手册,以在第 1 行的“CURRENT_DATE”附近使用正确的语法(SQL:alter table coupons
add expiry_date
date not null default CURRENT_DATE)
【问题讨论】:
我不相信 MySQL 有CURRENT_DATE
占位符。 dev.mysql.com/doc/refman/8.0/en/timestamp-initialization.html
yes.only CURRENT_TIMESTAMP 占位符
【参考方案1】:
请试试这个代码:
$table->date('expiry_date')->default(Carbon::now());
【讨论】:
解决了我的问题。谢谢 我认为这不会在当前日期修复。它会继续使用迁移时的日期。 DB::raw('CURRENT_TIMESTAMP') 应该可以解决这个问题以上是关于语法错误或访问冲突:1064 您的 SQL 语法有错误;对应于正确语法的 MySQL 服务器版本的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 6 - SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;
SQLSTATE [42000]:语法错误或访问冲突:1064 在进行迁移时,您的 SQL 语法有错误
语法错误或访问冲突:1064 您的 SQL 语法有错误;对应于正确语法的 MySQL 服务器版本
SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MariaDB 对应的手册
SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误 — PHP — PDO [重复]
PHP 致命错误:未捕获的 PDOException:SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误