Php 运行mysql查询以创建表时出错
我在使用MySQL创建表时遇到一个错误。我在下面解释我的问题Php 运行mysql查询以创建表时出错,php,mysql,Php,Mysql,我在使用MySQL创建表时遇到一个错误。我在下面解释我的问题 $sql="CREATE TABLE db_cron( ". "id INT NOT NULL AUTO_INCREMENT, ". "user_alert INT(11) NOT NULL DEFAULT NONE, ". "status INT(11) NOT NULL DEFAULT NONE, ". "PRIMARY KEY ( id )); "; 我得到以下错
$sql="CREATE TABLE db_cron( ".
"id INT NOT NULL AUTO_INCREMENT, ".
"user_alert INT(11) NOT NULL DEFAULT NONE, ".
"status INT(11) NOT NULL DEFAULT NONE, ".
"PRIMARY KEY ( id )); ";
我得到以下错误:
#1064-您的SQL语法有错误;检查手册
对应于您的MySQL服务器版本,以便使用正确的语法
接近'NONE,status INT(11)NOT NULL DEFAULT NONE,PRIMARY KEY(id))'
在1号线
这里我需要创建一个默认值为none的表。1。您已经应用了不必要的引号 2.您有
非空
以及默认无
,这是不会发生的(使用非空
时必须提供一些默认值)
你可以这样做:-
$sql="CREATE TABLE db_cron(
id INT(11) NOT NULL AUTO_INCREMENT,
user_alert INT(11) NOT NULL DEFAULT 0,
status INT(11) NOT NULL DEFAULT 0,
PRIMARY KEY ( id )
)";
您使用了太多的引号只是为了连接多个字符串,这不是必需的 请删除这些引号,您还必须提供默认值,而不是
NULL
类似0
的值或任何其他您想要的值
不过,您可以使用下面的查询来创建表
$sql = "CREATE TABLE `db_cron`( id INT NOT NULL AUTO_INCREMENT,
user_alert INT(11) NOT NULL DEFAULT 0,
status INT(11) NOT NULL DEFAULT 0,
PRIMARY KEY ( id ))";
上述查询将为user\u alert
和status
创建具有默认值0
的表
希望这对你有帮助
感谢和问候。要求
非空
但默认无
,hmmmerror消息对mesubhra来说似乎很清楚,请检查下面我的答案