拜托,我刚刚开始学习SQL并陷入困境.我正在尝试为我的测试项目构建一个数据库,我创建了一些表,做了关系,定义了主键和外键.....所有这一切都在SQL Server 2008中通过Visual界面(表设计/编辑) ,没有声明编码(没有到达那里,但我会:)).
我Tax在一个表中有一个列,Orders我做了我的功课,发现最好使用decimal带CHECK约束的数据类型(我用十进制(5,2)).
所以我右键单击了列 - >约束,并在我输入的表达式中
([TAX] >= (0.00) AND [TAX] <= (100.00))
Run Code Online (Sandbox Code Playgroud)
我的值超过了检查约束,我可以输入123456.0999并在表中输入1234560999,如果我输入2.5,我得到25 .....所以CHECK CONSTRAINT不能正常工作???
请帮忙
编辑:这是我桌子上的创建脚本
USE [MyCompany]
GO
/****** Object: Table [dbo].[Orders] Script Date: 03/22/2013 11:33:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Orders](
[OrderID] [int] IDENTITY(1,1) NOT NULL,
[OrderDateTime] [smalldatetime] NOT NULL,
[CustomerID] [int] NOT NULL,
[Tax] [decimal](5, 2) NULL,
[Shipping] [decimal](7, 3) NOT NULL,
CONSTRAINT [PK_Orders] PRIMARY KEY CLUSTERED …Run Code Online (Sandbox Code Playgroud)