[英]What's wrong with this MySQL command?
有人可以告诉我出了什么问题吗?
CREATE TABLE IF NOT EXISTS ifm.LinksTable (
file_system_id SMALLINT NOT NULL ,
inode_number BIGINT AUTO_INCREMENT ,
parent_inode_number BIG INT ,
virtual_name VARCHAR(256) ,
UNIQUE INDEX (parent_inode_number, virtual_name, file_system_id),
inode_type CHAR(1) ,
symbolic_link_inode BIGINT DEFAULT 0 ,
current_version_number SMALLINT DEFAULT 0 ,
number_of_links_to_file SMALLINT DEFAULT 0 ,
PATH varchar(1000),
dir_level INT ,
time_last_modified INT ,
time_last_accessed INT ,
time_last_changed INT ,
created_date INT ,
permissions INT ,
uid INT ,
gid INT ,
deleted_flag CHAR(1) ,
PRIMARY KEY(file_system_id, inode_number)
);
错误是:
ERROR 1064 (42000):您的 SQL 语法有错误; 检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的 'BIG INT ,virtual_name VARCHAR(256) , UNIQUE INDEX (parent_inode_number, virtua') 附近使用的正确语法
请考虑我是 MySQL 命令的新手,但了解 SQL。
这就是 MySQL def 文件的样子,我向其中添加了级别 a 和路径
cat ifmLinksTable.mysqldef
file_system_id,smallint not null
inode_number,bigint auto_increment
parent_inode_number,bigint
virtual_name,varchar(256) , unique index (parent_inode_number, virtual_name, file_system_id)
inode_type,char(1)
symbolic_link_inode,bigint default 0
current_version_number,smallint default 0
number_of_links_to_file,smallint default 0
time_last_modified,int
time_last_accessed,int
time_last_changed,int
created_date,int
permissions,int
uid,int
gid,int
deleted_flag,char(1), primary key(file_system_id, inode_number)
它应该是BIGINT
,没有空间,但不BIG INT
CREATE TABLE IF NOT EXISTS ifm.LinksTable (
file_system_id SMALLINT NOT NULL ,
inode_number BIGINT AUTO_INCREMENT ,
parent_inode_number BIGINT ,
virtual_name VARCHAR(256) ,
UNIQUE INDEX (parent_inode_number, virtual_name, file_system_id),
inode_type CHAR(1) ,
symbolic_link_inode BIGINT DEFAULT 0 ,
current_version_number SMALLINT DEFAULT 0 ,
number_of_links_to_file SMALLINT DEFAULT 0 ,
PATH varchar(1000),
dir_level INT ,
time_last_modified INT ,
time_last_accessed INT ,
time_last_changed INT ,
created_date INT ,
permissions INT ,
uid INT ,
gid INT ,
deleted_flag CHAR(1) ,
PRIMARY KEY(file_system_id, inode_number)
);
我看到一些错误:parent_inode_number BIG INT => parent_inode_number BIGINT(只是一些错字^^),另一个是 VARCHAR:VARCHAR 最大值是 255 所以 VARCHAR(256) 和 VARCHAR(1000) 是不可能的
希望我有所帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.