创建表时遇到此错误。如何解决?
SQL查询:
CREATE TABLE Measurement(
MeasurementID NOT NULL ,
MeasurementTypeID INTEGER,
MeasurementNameCHAR( 100 ) ,
SemanticModelInfrastructureID INTEGER,
AddressCHAR( 150 ) ,
PRIMARY BOOL,
DerivedCalcCHAR( 255 ) ,
PRIMARY KEY ( MeasurementID ) ,
KEY ( MeasurementTypeID ) ,
KEY ( SemanticModelInfrastructureID )
);
MySQL说:
#1064 - 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,
MeasurementTypeID INTEGER,
MeasurementName CHAR(100),
SemanticMo' at line 3
答案 0 :(得分:2)
MeasurementID没有类型;试试MeasurementID INTEGER NOT NULL
。
答案 1 :(得分:1)
您在这里缺少数据类型:
MeasurementID NOT NULL
尝试:
MeasurementID INTEGER NOT NULL
NOT NULL只是一个阻止NULL值存储在列中的约束。您仍然需要声明所需的数据类型,如INTEGER或CHAR。
答案 2 :(得分:1)
有几个错误:
您需要在MeasurementID
/ null
声明之前提供not null
数据类型
MeasurementID int unsigned not null auto_increment,
您在CHAR
之前的几行内缺少空格。
PRIMARY
是一个保留字,需要用背景包围(在PRIMARY BOOL
行上)