如何确保非负柱?

时间:2012-07-16 05:27:48

标签: sql sql-server sql-server-2008

我需要创建一个表Branch,其中列branch_namebranch_city字符类型,assets为整数类型。 branch_name是主要关键,我必须确保assets是非负面的。

我试过

CREATE TABLE Branch
(
    branch_name navarchar(100) primary key,
    branch_city nvarchar(100),
    assests int NOT NULL
)

3 个答案:

答案 0 :(得分:18)

您需要定义主键的数据类型,并且需要添加CHECK约束以确保assets为非负数:

CREATE TABLE dbo.Branch
(
    branch_name NVARCHAR(100) primary key,
    branch_city nvarchar(100),
    assets int NOT NULL CHECK (assets >= 0)
)

答案 1 :(得分:5)

更改表格,创建约束以检查列

ALTER TABLE Branch ADD CONSTRAINT chkassets CHECK (assets > 0);

答案 2 :(得分:0)

试试这个

CREATE TABLE Branch (
    branch_name VARCHAR(100) PRIMARY KEY
    ,branch_city NVARCHAR(100)
    ,assests INT NOT NULL
    ,CONSTRAINT ck_assets_positive CHECK (assests >= 0)
    )