erro#1064 - 您的SQL语法错误

时间:2017-08-14 23:31:49

标签: mysql sql mariadb

我无法创建表格。

这是代码:

DROP TABLE IF EXISTS `monitoreos`;

CREATE TABLE `monitoreos` (
  `id` INTEGER NOT NULL AUTO_INCREMENT DEFAULT NULL,
  `fecha` VARCHAR NULL DEFAULT NULL,
  `id_cliente` INTEGER NULL DEFAULT NULL,
  `id_vehiculo` INTEGER NULL DEFAULT NULL,
  `posicion` INTEGER NULL DEFAULT NULL,
  `numero_serie` INTEGER NULL DEFAULT NULL,
  `numero_alterno` INTEGER NULL DEFAULT NULL,
  `profundidad_inicial` VARCHAR NULL DEFAULT NULL,
  `horometro_actual` VARCHAR NULL DEFAULT NULL,
  `profundidad_actual_exterior` VARCHAR NULL DEFAULT NULL,
  `profundidad_actual_interior` VARCHAR NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
);

这是错误:

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'NULL DEFAULT NULL,
  `id_cliente` INTEGER NULL DEFAULT NULL,
  `id_vehiculo` I' at line 3

2 个答案:

答案 0 :(得分:3)

我认为您不能将默认Null和自动增量放在一起。摆脱默认空值。

答案 1 :(得分:0)

Nullable和DEFAULT NULL是默认设置,因此您可以删除它们。

更重要的是,您需要VARCHAR字段的长度。以下作品:

CREATE TABLE `monitoreos` (
  `id` INTEGER NOT NULL AUTO_INCREMENT ,
  `fecha` VARCHAR(255),
  `id_cliente` INTEGER,
  `id_vehiculo` INTEGER,
  `posicion` INTEGER,
  `numero_serie` INTEGER,
  `numero_alterno` INTEGER,
  `profundidad_inicial` VARCHAR(255),
  `horometro_actual` VARCHAR(255),
  `profundidad_actual_exterior` VARCHAR(255),
  `profundidad_actual_interior` VARCHAR(255),
  PRIMARY KEY (`id`)
);

Here是一个SQL小提琴。