小编Nob*_*bot的帖子

检查SQL Server 2008中的约束

拜托,我刚刚开始学习SQL并陷入困境.我正在尝试为我的测试项目构建一个数据库,我创建了一些表,做了关系,定义了主键和外键.....所有这一切都在SQL Server 2008中通过Visual界面(表设计/编辑) ,没有声明编码(没有到达那里,但我会:)).

Tax在一个表中有一个列,Orders我做了我的功课,发现最好使用decimalCHECK约束的数据类型(我用十进制(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)

check-constraints sql-server-2008

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

check-constraints ×1

sql-server-2008 ×1