19

我需要创建一个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
)
4

3 回答 3

27

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

CREATE TABLE dbo.Branch
(
    branch_name NVARCHAR(100) primary key,
    branch_city nvarchar(100),
    assets int NOT NULL CHECK (assets >= 0)
)
于 2012-07-16T05:30:55.877 回答
9

更改表创建约束以检查列

ALTER TABLE Branch ADD CONSTRAINT chkassets CHECK (assets > 0);
于 2012-07-16T05:52:14.733 回答
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)
    )
于 2012-07-16T05:50:34.377 回答