#具体问题
在用mysql创建表时出现以下的报错(具体翻译如下),不明白为什么这样报错,因为数据集源码都是公司提供的。
#具体创建表的源码
CREATE TABLE `data_set`
(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'id',
`app_id` BIGINT UNSIGNED DEFAULT NULL COMMENT '项目id',
`name` VARCHAR (100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据集名称',
`descr` VARCHAR (100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据集描述',
`data_source_type` VARCHAR (100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据源类型',
`db_name` VARCHAR (100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据库名称',
`table_name` VARCHAR (100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '表名',
`schema` text DEFAULT NULL COMMENT '表的元信息',
`create_user` VARCHAR (50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`update_user` VARCHAR (50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '修改人',
`create_time` BIGINT DEFAULT '0' COMMENT '创建时间',
`update_time` BIGINT DEFAULT '0' COMMENT '修改时间',
`status` INT DEFAULT '0' COMMENT '是否删除 0-否 1-是',
PRIMARY KEY(`id`)
KEY `idx_app_id` (`app_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='数据集表';
#要求:得到具体解决办法?感谢!
楼主贴的sql格式有问题:
1.我复制sql执行,也是报错一样。
2.查看报错,第二行开始创建就有问题,尝试删除第二行,继续执行,还是报错在首行。
3.自己根据图示sql ,手动输入一条创建,创建成功
CREATE TABLE `dem06`(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT comment 'id',
PRIMARY KEY(`id`)
);
4.继续创建测试
CREATE TABLE `data_set`(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT comment 'id',
`app_id` BIGINT UNSIGNED DEFAULT NULL COMMENT '项目id',
`descr` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据集名称',
-- 省略中间 --
PRIMARY KEY(`id`),
KEY `idx_app_id`(`app_id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='数据库集表';
成功图示:
创建的语句应该没问题,不如你试一试复制这个代码吧
CREATE TABLE `data_set`(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'id',
`app_id` BIGINT UNSIGNED DEFAULT NULL COMMENT '项目id',
`name` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据集名称',
`descr` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据集描述',
`data_source_type` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据源类型',
`db_name` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据库名称',
`table_name` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '表名',
`schema` TEXT DEFAULT NULL COMMENT '表的元信息',
`create_user` VARCHAR(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
`update_user` VARCHAR(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '修改人',
`create_time` BIGINT DEFAULT '0' COMMENT '创建时间',
`update_time` BIGINT DEFAULT '0' COMMENT '修改时间',
`status` INT DEFAULT '0' COMMENT '是否删除 0-否 1-是',
PRIMARY KEY(`id`),
KEY `idx_app_id`(`app_id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='数据库集表';
这个语句的编码什么的应该有问题,我复制的语句在Navicat执行不成功
但是我比着全部手写一遍就没问题可以执行成功
估计是你的mysql版本太低了
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!