SQLServer数据库应用第三章.ppt
《SQLServer数据库应用第三章.ppt》由会员分享,可在线阅读,更多相关《SQLServer数据库应用第三章.ppt(61页珍藏版)》请在三一办公上搜索。
1、1,第三章数据表的建立,2,本章主要内容,表的概念SQL Server 的数据类型数据库中表的操作,3,数据库表记录字段属性,3.1 表的概念,字段,记录,4,5,设计数据库时,首先应该做什么?,确定数据库所需的表每个表中数据的类型可以访问每个表的用户,6,创建表及其对象之前做什么?,数据类型列数那些列允许空值是否要使用以及何处使用约束、默认值和规则所需索引的类型,7,创建表的方法?,创建一个基表添加数据,8,数据类型定义了各列允许使用的数据值。,3.2 SQL Server 的数据类型,9,指定数据类型的方法?,使用SQL Server 2005 系统数据类型创建基于系统数据类型的别名数据类
2、型从在Microsoft.NET Framework公共语言运行时创建的用户定义类型,10,需要定义数据类型的情况?,建立表字段申请局部变量申请存储过程中的局部变量转换数据类型,本章讨论的内容,11,数据类型,二进制型 binary(n),varbinary(n),image,字符型 char(n),varchar(n),日期及时间 datetime,smalldatetime,精确数值型 decimal(p,s),numeric(p,s)int等,近似数值型 float(n),Real,货币型 money,smallmoney,特殊类型 bit,timestamp,12,binary的存取速
3、度比varbinary快,当表中数据长度很固定时,应考虑用binary类型。,二进制数,binary,varbinary,存储空间固定的数据类型,指定长度8000,存储空间可变化的数据类型,8KB时,image数据,13,字符数据,由字母、符号和数字的任意组合组成,由单引号括起来,字符数据,char(n):列大小固定,varchar(n):列大小不固定,查询速度较快,输入字符长度n时,自动补空字符,8KB的ASCII字符,text数据,14,text和image数据类型,text:最多为231-1个符号,存文字image:最多为231-1个binary数据,存图形,两者均是可变长度的数据类型,
4、占较多空间,text字段专用于存储字符(非Unicode)数据,image字段专用于存储二进制数据,每条记录的text字段或image字段均有一个或多个存储页(2KB)存放它的值,15,日期及时间型数据,datetime,Smalldatetime,数字 分隔符 数字 分隔符 数字 时间 时间,dmy:15/04/1996,ydm:1996/15/04,myd:04/1996/15,斜杠、连字符、句号,dym:15/1996/04,ymd:1996/04/15,16,p:精度值s:小数位数 4.5,17,整型数据类型,(1)bigint:占8字节的存储空间,存储数据范围为2632631。(2)
5、int:占4字节的存储空间,存储数据范围为 2312311。(3)smallint:占2字节的存储空间,存储数据范围为2152151。(4)tinyint:占1字节的存储空间,存储数据范围为0255。,18,Unicode字符数据 使用Unicode数据类型,列可存储由Unicode标准定义的任何字符,包含由不同字符集定义的所有字符nvarchar 列大小不固定 4000个字符数,19,特殊类型数据,bit:存放1或0的逻辑类型数据,对于0以外的值,一律以1表示,User-Defined DataType:SQL Server还允许用户依据系统数据类型自定义数据类型,20,关于自定义数据类型,
6、sp_addtype typename,phystype,nulltype,用户自定义数据类型的名称,SQL Server提供的数据类型名称,是否允许用户自定义数据类型为NULL值,把zipcode作为自定义数据类型,长度为6EXEC sp_addtype zipcode,char(6)删除自定义的数据类型zipcodeEXEC sp_droptypezipcode,21,xml数据类型,xml数据类型允许用户在SQL Server数据库中存储XML文档和片段,22,SQL SERVER对象标识符,需要命名的对象数据库 表 列 文件组 文件约束 规则 默认值 索引 视图 触发器 存储过程 用户
7、自定义函数服务器 角色 登陆 全文本目录 用户自定义类型,23,命名规则,1.对象的名字必须以Uunicode2.0规范定义的任意字母开头。2.正常对象的名字可多大128个字符,而临时对象的名字可多大116个字符。3.与SQL Server关键字相同或包含内嵌空格的名字必须使用双引号(“”)或方括号()。,24,3.3 数据库中表的操作,在SQL Server中创建数据库可以通过Microsoft SQL Server Management Studio图形化界面和在SQL查询分析器输入T-SQL语言,假定已经建好三个数据库My_DB1、My_DB2和My_DB3,25,表的创建,create
8、 table database.owner.table_name(col_name column_properties constraintconstraint|,constraint,next_col_name|next_constraint),表所在的数据库,表的所有者,列名,列属性,(1)使用T-SQL,26,(stud_id int CONSTRAINT perid_chk NOT NULL PRIMARY KEY,name nvarchar(5)NOT NULL,birthday datetime,gender nchar(1),address nvarchar(20),telcod
9、e char(12),约束名,例:在数据库My_DB1中创建stud_info表,表中包括:学号、姓名、出身年月、性别、地址、电话号码、邮编,所在系代号,每月生活补贴等。,27,zipcode char(6)CONSTRAINT zip_chk CHECK(zipcode LIKE0-90-90-90-90-90-9),DeptCode tinyint CONSTRAINT DeptCode_chk CHECK(DeptCode100),salary money DEFAULT 260),约束名,约束名,28,例:在My_DB1数据库中创建一张表,包含:学年度、学号,数学、英语、计算机、化学和
10、物理等成绩,本例是一个多字段内容组合作为主键的例子。创建的新表名字为stud_score:,29,CREATE TABLE My_DB1.dbo.stud_score(year int NOT NULL,stud_id int NOT NULL,math_score numeric(4,1)CHECK(math_score=0 and math_score=0 and engl_score=100),30,comp_score numeric(4,1)CHECK(comp_score=0 and comp_score=0 and chem_score=0 and phys_score=100)
11、,CONSTRAINT pk_chk PRIMARY KEY(year,stud_id),约束名,31,本例中的主键定义为primary key(year,stud_id)以year和stud_id的组合作为主键,一个表只能有一个主键且值唯一,需要多列组合作为主键时要把作为主键的列用括号组合起来,32,带有参照性约束的表的创建,例:在数据库My_DB2中建一个名为device_manage的表,包括的信息有:仪器编号仪器名称仪器所属试验室的实验室名称同种仪器的数量仪器的购买价格仪器的供货商,33,CREATE TABLE My_DB2.dbo.device_manage(dev_id varc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQLServer 数据库 应用 第三
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5449391.html