Mysql 这里怎么了
我试着在phpMyAdmin上运行这个代码,它说 #1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解要使用的正确语法 第1行“ci_会话”附近Mysql 这里怎么了,mysql,create-table,Mysql,Create Table,我试着在phpMyAdmin上运行这个代码,它说 #1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解要使用的正确语法 第1行“ci_会话”附近 在所有表名和列名中都是相同的错误。您可以使用”,而应该使用反勾号: DROP TABLE IF EXISTS 'ci_sessions'; CREATE TABLE 'ci_sessions' ( 'session_id' varchar(40) COLLATE utf8_bin NOT NULL DEFAUL
在所有表名和列名中都是相同的错误。您可以使用
”
,而应该使用反勾号:
DROP TABLE IF EXISTS 'ci_sessions';
CREATE TABLE 'ci_sessions' (
'session_id' varchar(40) COLLATE utf8_bin NOT NULL DEFAULT '0',
'ip_address' varchar(16) COLLATE utf8_bin NOT NULL DEFAULT '0',
'user_agent' varchar(120) COLLATE utf8_bin DEFAULT NULL,
'last_activity' int(10) unsigned NOT NULL DEFAULT '0',
'user_data' text COLLATE utf8_bin NOT NULL, PRIMARY KEY ('session_id'),
KEY 'last_activity_idx' ('last_activity') )
ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
因此,这应该是可行的:
`
作为旁注-使用NOT NULL,然后将默认值设置为字符串0
。经常。这表明这是一种错误的做法,或者至少需要为以后的查询做更多的工作。例如,名为last_activity的列指示应允许空值
第二个旁注-last_活动通常是一个DATETIME列,而不是int(10)一个倒逗号不是backtick,所以我需要将所有倒逗号替换为backtick?就像我下面回答的,是…相关的:或者完全删除它们。unixtimestamp将是last_活动的有效值。valid yes@草莓。但也很难质疑
DROP TABLE IF EXISTS `ci_sessions`;
CREATE TABLE `ci_sessions` (
`session_id` varchar(40) COLLATE utf8_bin NOT NULL DEFAULT '0',
`ip_address` varchar(16) COLLATE utf8_bin NOT NULL DEFAULT '0',
`user_agent` varchar(120) COLLATE utf8_bin DEFAULT NULL,
`last_activity` int(10) unsigned NOT NULL DEFAULT '0',
`user_data` text COLLATE utf8_bin NOT NULL, PRIMARY KEY (`session_id`),
KEY `last_activity_idx` (`last_activity`) )
ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;