2010-06-04 89 views
6

试图完成一些作业并遇到了创建表的问题。你如何声明一个数字范围的列默认值。它的内容如下:“Column Building(默认为1,但可以是1-10)”我似乎无法找到...或知道在哪里查找此信息。SQL Server 2005使用列创建表默认值范围

CREATE TABLE tblDepartment 
(
Department_ID int NOT NULL IDENTITY, 
Department_Name varchar(255) NOT NULL, 
Division_Name varchar(255) NOT NULL, 
City varchar(255) default 'spokane' NOT NULL, 
Building int default 1 NOT NULL, 
Phone varchar(255) 
) 

我试图大厦INT默认为1 1至10 NOT NULL,没有工作了 我试图大厦整数默认1-10,创建表,但我不认为它是正确的。

回答

5

您需要将CHECK Constraint添加到列中。

ALTER TABLE tblDepartment 
ADD CONSTRAINT chkbuilding CHECK (Building >=1 AND Building <= 10); 
+3

我不认为我应该改变表格,只是创建。以下是我从http://www.w3schools.com/sql/sql_check.asp获得的内容: CREATE TABLE tblDepartment ( Building int default 1 NOT NULL, Check(Building> = 1 AND Building <= 10 ) ) – Matt 2010-06-04 08:55:33