表结构的创建、修改和删除
1>表结构的创建
例1为sales数据库创建一个销售人员表Salers,它包括销售人员编号(SaleID)、姓名(SaleName)、性别(Sex)、出生日期(Birthday)、雇用日期(HireDate)、地址(Address)、电话(telephone)、备注(Note)字段,其中SaleID、SaleName这两列不允许为空。CREATE TABLE salers(SaleID char(3) NOT NULL,SaleName char(8) NOT NULL,Sex char(2),Birthday datetime,HireDate datetime,Address char(60),Telephone char(13),Note char(200))注意:NOT NULL参数指出了该字段是不可以为空的。和他相对的还有一个NULL(指出了字段可以为空)。例2为sales数据库创建订单表Orders,包括OrderID、CustomerID、SaleID和OrderDate字段,其中OrderID为标识列,起始值为10248,增值为1;CustomerID和SaleID字段不允许为空值;OrderDate字段的默认值为当前日期。CREATE TABLE Orders(OrderID int IDENTITY(10248,1),CustomerID char(3) NOT NULL,SaleID char(3) NOT NULL,OrderDate datetime DEFAULT getdate())注:getdate()是系统函数,返回系统当前日期。Orders表有一个标识列OrderID,该列以10248为起始值,以1为增值,因此在插入数据时,用户不需提供该列的值,SQL Server 自动填充该列,该列的值依次是10248,10249,10250……Orders表中OrderDate列带有默认值,因此当用户插入数据时,如果没有给该列提供值,SQL Server 就自动用默认值填充该列。默认值为系统当前日期。例3为sales数据库在文件组USER1上创建类别Categories表。CREATE TABLE Categories(CategoryID int NOT NULL,CategoryName nvarchar(15),Description nvarchar(200))ON USER1注意:文件组USER1必须已经定义。在前两例中没有使用ON关键字指出文件组,则表存储在默认的文件组中。2>表结构的修改例1sales数据库中的Customers表包含CustomerID,CompanyName和ConnectName三个字段,现为该表添加公司地址(Address)、邮政编码(ZipCode)、和电话号码字段(Telephone)。EXEC sp_addtype telephone_code,’varchar(15)’,’NULL’EXEC sp_addtype zip,’char(6)’,’NOT NULL’GOALTER TABLE CustomersADD Address char(40),ZipCode zip,Telephone telephone_code在该列中,添加的ZipCode和Telephone字段的数据类型为用户自定义数据类型。例2将表Salers中的Sex列删除。ALTER TABLE SalersDROP COLUMN Sex例3将Salers表中的Address字段的长度改为30,并且不能为空。ALTER TABLE SalersALTER COLUMN Address varchar(30) NOT NULL注意:只能修改列的数据类型,以及列值是否为空。3>表结构的删除例:删除当前数据库中一个名为example1的表。DROP TABLE example1本文出自 “gc319的世界~” 博客,请务必保留此出处http://gc319.blog.51cto.com/445035/91647