4

SQL Server でテーブルを作成するときに問題が発生しました

データ型として DOUBLE を選択すると、エラーが突然発生しました!!!

これは次のコードです:

CREATE TABLE BATCH 
( Product_Name  VARCHAR(200) NOT NULL, 
  Product_Brand VARCHAR(100) NOT NULL, 
  CONSTRAINT Price_FK FOREIGN KEY (Product_Name,Product_Brand)REFERENCES Product   (Product_Name,Product_Brand),
  BATCH_Date AS GETDATE(),
  BATCH_OriginalPrice DOUBLE NOT NULL DEFAULT 0,
  BATCH_TAX DOUBLE NOT NULL DEFAULT 0,
  BATCH_ProductCost DOUBLE NOT NULL DEFAULT 0 ,
) 

キーワード「NOT」の近くの不正な構文

マウスをその上に置くと、「「NOT」付近の構文が正しくありません。 ID が必要です」と表示されます

何が問題なのか誰か教えてください!!!

4

3 に答える 3

11

doubleは SQL のデータ型ではないため、floatorを使用する必要がありますreal

あなたの例ではmoney、同様に使用できます。

関連:SQLサーバーでダブルを表すものは何ですか?

于 2013-08-01T06:25:27.147 に答える
1

DECIMALFLOATまたはREALデータ型を使用してみてください-

CREATE TABLE BATCH ( 
    Product_Name VARCHAR(200) NOT NULL, 
    Product_Brand VARCHAR(100) NOT NULL, 
    BATCH_OriginalPrice DECIMAL(18,2) NOT NULL DEFAULT 0, 
    BATCH_TAX DECIMAL(18,2) NOT NULL DEFAULT 0, 
    BATCH_ProductCost DECIMAL(18,2) NOT NULL DEFAULT 0 , 
    BATCH_Date AS GETDATE(), 
    CONSTRAINT Price_FK FOREIGN KEY (Product_Name,Product_Brand)
    REFERENCES Product (Product_Name,Product_Brand)
) 
于 2013-08-01T06:26:31.773 に答える