mysql - 简单sql建表语法错误

标签 mysql sql

这可能会以反对票告终,但由于森林,我看不到树木:

运行此 sql 查询:

CREATE TABLE `fontFamilies` (
  `id` INTEGER NULL AUTO_INCREMENT DEFAULT NULL,
  `name` VARCHAR NOT NULL DEFAULT 'NULL',
  `designer` INTEGER NULL,
  `firstLaunch` TIMESTAMP NULL DEFAULT NULL,
  `lastUpdate` TIMESTAMP NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
); 

我在 http://sqlfiddle.com/ 中收到以下错误

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'NOT NULL DEFAULT 'NULL',
  `designer` INTEGER NULL,
  `firstLaunch` TIMESTAMP NU' at line 3

是什么导致了这个错误?

最佳答案

SQLFiddle 使用 mysql。尝试设置 varchar 的大小:

CREATE TABLE `fontFamilies` (
  `id` INTEGER NULL AUTO_INCREMENT DEFAULT NULL,
  `name` VARCHAR(100) NOT NULL DEFAULT 'NULL',
  `designer` INTEGER NULL,
  `firstLaunch` TIMESTAMP NULL DEFAULT NULL,
  `lastUpdate` TIMESTAMP NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
); 

您还可以将 insert 命令添加到同一窗口:

insert into `fontFamilies` values(217,'name',217,'1992-10-10 10:10:10','1992-10-10 10:10:10')

关于mysql - 简单sql建表语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30828706/

相关文章:

MySQL查询删除某些电子邮件地址,都遵循类似的模式

java - Hibernate 多个原生 SQL 语句

MySQL - 查找具有子值的结果

python - LEFT 函数不适用于 python 中的 sqlite3

sql - 按小时分组,汇总平均值

mysql - 更新时增加版本列

javascript - 在 node.js 和 ape 服务器之间做出正确的选择

mysql - 缩小 GROUP BY 结果

android - SqlLiteDatabase.query 按日期排序的列不起作用

mysql - Sean Lahman 数据库示例查询