2012-05-03 47 views
1

創建表時遇到此錯誤。它如何被修復?MySQL錯誤#1064 NOT NULL

1064 - 您的SQL語法錯誤;檢查對應於你的MySQL服務器版本使用附近的正確語法手冊 'NOT NULL,多重峯SMALLINT默認NOT NULL,part_des VARCHAR(120)NOT NULL defau' 第4行

CREATE TABLE currentpricer_supplier1 
(
    supplier_number varchar(50) NOT NULL, 
    moq smallint default NOT NULL, 
    mult smallint default NOT NULL, 
    part_des varchar(120) default NOT NULL, 
    uom_qbreak char(2) default NOT NULL, 
    costbreak1 smallint default NOT NULL, 
    costvalue1 dec(6,3) default NULL, 
    costbreak2 smallint default NOT NULL, 
    costvalue2 dec(6,3) default NULL, 
    costbreak3 smallint default NOT NULL, 
    costvalue3 dec(6,3) default NULL, 
    costbreak4 smallint default NOT NULL, 
    costvalue4 dec(6,3) default NULL, 
    costbreak5 smallint default NOT NULL, 
    costvalue5 dec(6,3) default NULL, 
    costbreak6 smallint default NOT NULL, 
    costvalue6 dec(6,3) default NULL, 
    costbreak7 smallint default NOT NULL, 
    costvalue7 dec(6,3) default NULL, 
    costbreak8 smallint default NOT NULL, 
    costvalue8 dec(6,3) default NULL, 
    leadtime smallint default NOT NULL, 
    leadtime_code char(2) default NOT NULL, 
    PRIMARY KEY (supplier_number) 
) 

回答

1

你有如果您指定了默認關鍵字,請輸入默認值。 「不爲空」是另一個規範,而不是一個值本身。

什麼是默認值? 例如: -

MOQ SMALLINT默認爲0 NOT NULL,

1

在有你沒有提供的默認值default關鍵詞的每個列。對於數字,這可以像0一樣簡單,默認情況下可以是字符的空字符串。另外,您的主鍵列不存在,所以您需要更正 - 是lumex_number嗎?

下面的編輯工作:

CREATE TABLE currentpricer_supplier1 
(
    lumex_number varchar(50) NOT NULL, 
    moq smallint default 0 NOT NULL, 
    mult smallint default 0 NOT NULL, 
    part_des varchar(120) default 0 NOT NULL, 
    uom_qbreak char(2) default 0 NOT NULL, 
    costbreak1 smallint default 0 NOT NULL, 
    costvalue1 dec(6,3) default 0 NULL, 
    costbreak2 smallint default 0 NOT NULL, 
    costvalue2 dec(6,3) default 0 NULL, 
    costbreak3 smallint default 0 NOT NULL, 
    costvalue3 dec(6,3) default 0 NULL, 
    costbreak4 smallint default 0 NOT NULL, 
    costvalue4 dec(6,3) default 0 NULL, 
    costbreak5 smallint default 0 NOT NULL, 
    costvalue5 dec(6,3) default 0 NULL, 
    costbreak6 smallint default 0 NOT NULL, 
    costvalue6 dec(6,3) default 0 NULL, 
    costbreak7 smallint default 0 NOT NULL, 
    costvalue7 dec(6,3) default 0 NULL, 
    costbreak8 smallint default 0 NOT NULL, 
    costvalue8 dec(6,3) default 0 NULL, 
    leadtime smallint default 0 NOT NULL, 
    leadtime_code char(2) default '' NOT NULL, 
    PRIMARY KEY (lumex_number) 
)