创建表时phpmyadmin mysql错误1064

时间:2013-05-14 13:37:52

标签: mysql sql phpmyadmin

可能有什么不对?我针对MySQL运行了一个DDL,它给出了一个错误#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 'VARCHAR2(250) NOT NULL, BIO VARCHAR2(250) NOT NULL, ID NUMBER(10) NOT' at line 2

这是我的DDL:

CREATE TABLE DW.BOOKS(    
BIO VARCHAR2( 250 ) NOT NULL ,
ID NUMBER( 10 ) NOT NULL ,
REVENUE VARCHAR2( 20 ) ,       
PRIMARY KEY ( ID )
);

3 个答案:

答案 0 :(得分:2)

我不熟悉“NUMBER(10)”。试试这个:

CREATE TABLE IF NOT EXISTS `DW.BOOKS` (
  `BIO` varchar(250) NOT NULL,
  `ID` int(10) NOT NULL,
  `REVENUE` varchar(20) NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

答案 1 :(得分:1)

你混淆了oracle和MySQL。 MySQL不提供VARCHAR2而不是NUMBER

另请参阅this页面,了解Oracle和MySQL中的data types differences

CREATE TABLE DW.BOOKS(    
    BIO VARCHAR(250) NOT NULL ,
    ID INT(10) NOT NULL ,
    REVENUE VARCHAR(20) ,       
    PRIMARY KEY (ID)
);

答案 2 :(得分:0)

您需要阅读data type overview文档。 MySQL中没有VARCHAR2NUMBER类型。

CREATE TABLE BOOKS(    
BIO VARCHAR( 250 ) NOT NULL ,
ID int( 10 ) NOT NULL ,
REVENUE VARCHAR( 20 ) ,       
PRIMARY KEY ( ID )
);

See a demo