Php SQL在创建表时不断反映getdate的语法错误
SQL不断反映语法错误 应为逗号或右括号。(靠近“(”) 你知道哪里出了问题吗?或者怎么解决Php SQL在创建表时不断反映getdate的语法错误,php,mysql,sql-server,Php,Mysql,Sql Server,SQL不断反映语法错误 应为逗号或右括号。(靠近“(”) 你知道哪里出了问题吗?或者怎么解决 错误出现在GETDATE(),我个人使用时间戳,我想您应该使用CURRENT\u时间戳 DEFAULT子句指定列的默认值 异常,默认值必须是常量;它不能是 函数或表达式。例如,这意味着您不能 将日期列的默认值设置为函数的值,例如 如NOW()或当前_日期。例外情况是您可以指定 当前时间戳作为时间戳的默认值,或(从MySQL开始) 5.6.5)日期时间列。参见第11.3.5节“时间戳和日期时间的自动初始化
错误出现在
GETDATE()
,我个人使用时间戳,我想您应该使用CURRENT\u时间戳
DEFAULT子句指定列的默认值
异常,默认值必须是常量;它不能是
函数或表达式。例如,这意味着您不能
将日期列的默认值设置为函数的值,例如
如NOW()或当前_日期。例外情况是您可以指定
当前时间戳作为时间戳的默认值,或(从MySQL开始)
5.6.5)日期时间列。参见第11.3.5节“时间戳和日期时间的自动初始化和更新”
所以您的create语句应该是
CREATE TABLE `employee` (
`id` INT(6) UNSIGNED NOT NULL AUTO_INCREMENT,
`username` VARCHAR(15) NOT NULL,
`password` VARCHAR(50) NOT NULL,
`first_name` VARCHAR(50) NOT NULL,
`last_name` VARCHAR(45) NOT NULL,
`email` VARCHAR(50) NOT NULL,
`role` VARCHAR(10) NOT NULL,
`date_created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`));
错误出现在
GETDATE()
,我个人使用时间戳,我想您应该使用CURRENT\u时间戳
DEFAULT子句指定列的默认值
异常,默认值必须是常量;它不能是
函数或表达式。例如,这意味着您不能
将日期列的默认值设置为函数的值,例如
如NOW()或当前_日期。例外情况是您可以指定
当前时间戳作为时间戳的默认值,或(从MySQL开始)
5.6.5)日期时间列。参见第11.3.5节“时间戳和日期时间的自动初始化和更新”
所以您的create语句应该是
CREATE TABLE `employee` (
`id` INT(6) UNSIGNED NOT NULL AUTO_INCREMENT,
`username` VARCHAR(15) NOT NULL,
`password` VARCHAR(50) NOT NULL,
`first_name` VARCHAR(50) NOT NULL,
`last_name` VARCHAR(45) NOT NULL,
`email` VARCHAR(50) NOT NULL,
`role` VARCHAR(10) NOT NULL,
`date_created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`));
GETDATE()
在MySQL中不起作用,用CURRENT\u TIMESTAMP
替换它,你就是黄金,假设你的MySQL是最新的,如果不是DATETIME
类型不能使用CURRENT\u TIMESTAMP
作为默认值,你需要使用TIMESTAMP
类型在MySQL中不起作用,用CURRENT\u TIMESTAMP
替换它,你就是黄金,假设你的MySQL是最新的,如果不是DATETIME
类型,就不能使用CURRENT\u TIMESTAMP
作为默认值,你需要使用TIMESTAMP
类型来代替它修复你的标签,是sql server还是MySQL?我是gu如果是mysql,那么使用CURRENT\u TIMESTAMP
而不是GETDATE()
。mysql和SQLServer之间的语法会有所不同。那么,您实际使用的修复标记是sql server还是mysql?我猜是mysql,所以使用CURRENT\u TIMESTAMP
而不是GETDATE()
。MYSQL和SQLServer之间的语法不同。那么您实际使用的是哪种语法