【问题标题】:Expecting ID Error - SQL Server预期 ID 错误 - SQL Server
【发布时间】:2013-08-01 06:23:36
【问题描述】:

我在 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 ,
) 

每次double后的错误是这样的 关键字“NOT”附近的语法不正确

当我将鼠标移过它时,它会说 "'NOT' 附近的语法不正确。需要 ID"

谁能告诉我是什么问题!!!

【问题讨论】:

    标签: sql-server


    【解决方案1】:

    double 不是 SQL 中的数据类型,您必须使用 floatreal

    在您的示例中,您也可以使用money

    相关:What represents a double in sql server?

    【讨论】:

    • SQL Server data types完整列表
    • 但是我将如何在 java 中映射它? java中的[MONEY]代表什么?
    【解决方案2】:

    您不能在 SQL SERVER 中使用 DOUBLE。尝试使用 Decimal 或 Float 或 Real 或 Money 甚至 Smallmoney。见HERE

    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 REAL NOT NULL DEFAULT 0,
      BATCH_TAX REAL NOT NULL DEFAULT 0,
      BATCH_ProductCost REAL NOT NULL DEFAULT 0 ,
    ) 
    

    【讨论】:

      【解决方案3】:

      尝试使用DECIMALFLOATREAL 数据类型-

      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)
      ) 
      

      【讨论】:

      • 但是我将如何在 JAVA 中表示这些数据类型?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-20
      • 1970-01-01
      • 2015-08-07
      • 2011-10-27
      • 1970-01-01
      相关资源
      最近更新 更多