3.1.1使用对象资源管理器创建数据表XJszX2.student-dbo.StInfoIX对象资源管理器列名数据类型允许Null值连接O)char(10)国JSZX2(SQLServer10.0.1600-JSZX2yanh)StID-口数据库日varchar(20)口St Name系统数据库国口数据库快照char(2)口田St_SexExercise_dbi田7datetimeBorn DateRReportServer又cl NamevarcharReportServerTempDB田Student日区Telephonevarchar(田数据库关系图主区Addressvarchar日新建表N)..田AvarcharResume田筛选器(L)题生成更改脚本(S)..田启动PowerShell(H)田在SQLServe中,一个汉字占据两个字符的位报表(P)1田置,因此计算一个字段长度时,一个汉字的+刷新(F)长度是2 Byte。+安手性char数据类型否允许Nul值日表设计器表设计器6数贴件权个SOLServer2008
数据库技术 3.1.1使用对象资源管理器创建数据表 6 在SQL Serve中,一个汉字占据两个字符的位 置,因此计算一个字段长度时,一个汉字的 长度是2Byte
3.1.2使用T-SQL语言创建数据表■语法格式:表名最多可包含128个字符数据库拥有者CREATETABLE[database_name.[owner.Jlowner.]table_name({<column definition>定义计算列的值的表达式Icolumn_nameAScomputed_column_expression<table constraint>::=[CONSTRAINTconstraint namelI[(PRIMARYKEYUNIQUE]表约束,可选的关键字PRIMARYKEY、NOT[ON(filegroup|DEFAULT]]NULLY UNIQUEFOREIGNKEY或CHECK[TEXTIMAGE_ON(filegroup|DEFAULT] ]T<column_definition>::={(column_namedata_type)[COLLATE<collation_name>][DEFAULTconstant expression]7数据库技术SOLServer2008
数据库技术 3.1.2 使用T-SQL语言创建数据表 语法格式: CREATE TABLE [database_name.[owner.]|owner.] table_name ( {<column_definition> | column_name AS computed_column_expression | <table_constraint>∷=[CONSTRAINT constraint_name] } | [{PRIMARY KEY | UNIQUE}] ) [ON { filegroup | DEFAULT}] [TEXTIMAGE_ON{ filegroup | DEFAULT } ] <column_definition>∷={column_name data_type} [COLLATE<collation_name>] [DEFAULT constant_expression] 7 表名最多可包含128 个字符 表约束,可选的关键字 PRIMARY KEY、NOT NULL、UNIQUE、 FOREIGN KEY 或 CHECK 定义计算列的值的表达式 数据库拥有者
3.1.2使用T-SQL语言创建数据表例3.1:在数据库Student中创建Student学生信息表,要求包含SNO(学号)、NAME(姓名)、AGE(年龄)、SEX(性别)信息。X口MicrosoftSQLServerManagementStudia文件(F)查询(Q)项目(P)调试(D)工具U窗口W)社区(C)韩助(H)编辑(E)视图VUse Student新建查询(NL5GoStudent执行(X对象资源管理器?XXSQLQuery1.sql-JS..(JSZX2yanh(52))CREATETABUse Student连接(O)早国GoStudent(ECREATE TABLESTD数据库关系图+(S NO CHAR(7),表NAMECHAR(10),OS_NOCHAGE SMALLINT,系统表SEX CHAR(1))国dbo.StInfoNAMECII1国国dbo.STD消息视图AGESM命令已成功完成。同义词可编程性SEXCHAServiceBroker+专Student00:00:000行查询已成功执行。n)就绪行1列17Ch9Ins8数据库技术SOLServer2008
数据库技术 3.1.2 使用T-SQL语言创建数据表 例3.1:在数据库Student中创建Student学生信息表,要求包 含S_NO(学号)、NAME(姓名)、AGE(年龄)、SEX(性别) 信息。 Use Student Go CREATE TABLE STD ( S_NO CHAR(7) , NAME CHAR(10), AGE SMALLINT, SEX CHAR(1) ) 8
3.1.2使用T-SQL语言创建数据表要求包含例3.2:在数据库Student中创建STD1学生信息表,SNO(学号)、NAME(姓名)、AGE(年龄)信息,并限制年龄在15~25周岁之间,学号不能为空,指定学号为主关键字。CREATETABLESTD1(S_NOCHAR(7) NOT NULLNAME CHAR(10)AGESMALLINT.PRIMARYKEY(S_NO)CHECK(AGEBETWEEN15AND25)-9数据库技术SOLServer2008
数据库技术 3.1.2 使用T-SQL语言创建数据表 例3.2:在数据库Student中创建STD_1学生信息表,要求包含 S_NO(学号)、NAME(姓名)、AGE(年龄)信息,并限制年 龄在15~25周岁之间,学号不能为空,指定学号为主关键字。 CREATE TABLE STD_1 ( S_NO CHAR(7) NOT NULL, NAME CHAR(10), AGE SMALLINT, PRIMARY KEY(S_NO), CHECK(AGE BETWEEN 15 AND 25) ) 9
3.1.2使用T-SQL语言创建数据表例3.3:创建临时表temp_student。■语句如下:/*用#说明tempstudent为本地临时表*CREATE TABLE#temp_student(学号SMALLINTNOTNULL,姓名VARCHAR(3O)NOTNULL年龄INTNOTNULLPRIMARYKEY(学号))临时表与永久表相似,但临时表存储在tempdb中,当不再使用时会自动删除。10数据库技术SOLServer2008
数据库技术 3.1.2 使用T-SQL语言创建数据表 例3.3:创建临时表temp_student 。 语句如下: /*用#说明temp_student为本地临时表*/ CREATE TABLE #temp_student ( 学号 SMALLINT NOT NULL , 姓名 VARCHAR(30) NOT NULL, 年龄 INT NOT NULL, PRIMARY KEY (学号) ) 临时表与永久表相似,但临时表存储在tempdb中,当不再使 用时会自动删除。 10