数据库-第04章---创建数据类型和表课件

上传人:冬**** 文档编号:252927077 上传时间:2024-11-24 格式:PPT 页数:30 大小:299.60KB
返回 下载 相关 举报
数据库-第04章---创建数据类型和表课件_第1页
第1页 / 共30页
数据库-第04章---创建数据类型和表课件_第2页
第2页 / 共30页
数据库-第04章---创建数据类型和表课件_第3页
第3页 / 共30页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,Copyright2008,1,第4章 创建数据类型和表,创建数据类型,创建表,生成列值,生成脚本,推荐操作,第4章 创建数据类型和表创建数据类型,创建数据类型,系统提供的数据类型,创建和删除用户定义的数据类型,选择数据类型的指导原则,3.1,创建数据类型,创建数据类型系统提供的数据类型3.1 创建数据类型,系统提供的数据类型,数字数据,整型数据:存储整数,小数数据:包含存储在最小有效数上的数据,3.1.1,系统提供的数据类型,bigint,占,8,个字节,值的范围为-2,63,2,63,-1,int,占,4,个字节,值的范围为-2,31,2,31,-1,smallint,占,2,个字节,值的范围为-3276832 767,tinyint,占,1,个字节,值的范围为 0255,decimal(p,s),p,为精度,最大,38,;,s,为小数位数,0,sp,numeric(p,s),在,SQL Server,中,等价于,decimal,系统提供的数据类型数字数据3.1.1 系统提供的数据类型bi,系统提供的数据类型(续),数字数据(续),近似数字数据:表示浮点数据的近似数字,货币数据:表示正的或负的货币值,3.1.1,系统提供的数据类型,float(,n,),从-1.79,E+308,到 1.79,E+308,之间的浮点数字数据;,n,为用于存储科学记数法尾数的位数,同时指示其精度和存储大小,1,n,53,real,从 3.40,E+38,到 3.40,E+38,之间的浮点数字数据,存储大小为,4,字节;,SQL Server,中,,real,的同义词为,float(24),money,占,8,个字节,值的范围为,-922 337 203 685,477.580 8,+922 337 203 685,477.580 7,smallmoney,占,4,个字节,值的范围为,-214 748,.3648,214 748.3647,系统提供的数据类型(续)数字数据(续)3.1.1 系统提供的,系统提供的数据类型(续),日期和时间数据,字符数据和,Unicode,字符数据,3.1.1,系统提供的数据类型,datetime,占,8,个字节,表示从1753年1月1日到 9999年12月31日的日期,smalldatetime,占,4,个字节,表示从1900年1月1日至2079年6月6日的日期,char(,n,),存储字符个数为 08 000,varchar(,n,),存储字符个数为 08 000,text,存储字符个数为 02,GB,nchar(,n,),存储字符个数为 04 000,nvarchar(,n,),存储字符个数为 04 000,ntext,存储字符个数为 01,GB,系统提供的数据类型(续)日期和时间数据3.1.1 系统提供的,系统提供的数据类型(续),二进制数据,其他,3.1.1,系统提供的数据类型,binary(,n,),存储字节个数 08 000,varbinary(,n,),存储字节个数 08 000,image,存储字节个数 02,G,bit,存储位数据,cursor,存储对游标的引用,rowversion(timestamp),时间戳,sql_variant,可存储除,text、ntext、image、rowversion,之外的其他类型,table,存储函数返回结果,uniqueidentifier,存储,GUID,以及,UUID,系统提供的数据类型(续)二进制数据3.1.1 系统提供的数据,创建和删除用户定义的数据类型,3.1.2,创建和删除用户定义的数据类型,为什么要自定义数据类型,当多个表的列中要存储同样类型的数据,且想确保这些列具有完全相同的数据类型、长度和为空性时,可使用用户定义数据类型,以保证数据的一致性,创建用户定义的数据类型,企业管理器,系统存储过程,sp_addtype,类型名,系统数据类型,NULL|NOT NULL,拥有者,删除用户定义的数据类型,sp_droptype,类型名,创建和删除用户定义的数据类型3.1.2 创建和删除用户定义,创建和删除用户定义的数据类型,(,续,),3.1.2,创建和删除用户定义的数据类型,创建用户定义的数据类型:,EXEC sp_addtype city,varchar(20),NULL,EXEC sp_addtype region,varchar(20),NULL,EXEC sp_addtype country,varchar(40),NULL,删除用户定义的数据类型:,EXEC sp_droptype city,EXEC sp_droptype region,EXEC sp_droptype country,创建和删除用户定义的数据类型(续)3.1.2 创建和删除用,选择数据类型的指导原则,若列值的长度相差很大,那么使用变长数据类型,例如某列存储的是人名,地址等,谨慎使用,tinyint,数据类型,虽然节省空间,但扩展性很小,对于小数数据来说,一般使用,decimal,数据类型,可以精确地控制精度,如果行的存储量 超过8 000字节,使用,text,或者,image,若不大于8 000字节,可使用,char、varchar,或者,binary,数据类型,对于货币数据,使用,money,数据类型,不要使用类型为,float,或者,real,的列作为主键,因为它们不精确,所以不适合用于比较,3.1.3,选择数据类型的指导原则,选择数据类型的指导原则若列值的长度相差很大,那么使用变长数据,第4章 创建数据类型和表,创建数据类型,创建表,生成列值,生成脚本,推荐操作,第4章 创建数据类型和表创建数据类型,创建表,SQL Server,在行中组织数据的方式,SQL Server,组织,text,、,ntext,和,image,数据的方式,创建和删除表,添加和删除列,3.2,创建表,创建表SQL Server 在行中组织数据的方式3.2 创,行中组织数据的方式,行首,定长数据,NB,VB,变长数据,空值块,变长值块,4字节,数据部分,数据行由行首和数据部分组成,行首:四个字节,包括了数据行中每列的信息,数据部分,定长数据:存放定长数据类型的列的数据,空值块:标示值为空的列,变长值块:标示值为变长数据的列的信息以及存放位置,变长数据:存放变长数据类型的列的数据,3.2.1 SQL Server,在行中组织数据的方式,行中组织数据的方式行首定长数据NBVB变长数据空值块变长值块,text,、,ntext,和,image,数据的方式,Text、ntext,和,image,一般是存储在数据行之外的,因为它们一般都比较大,Text、ntext,和,image,的存储结构,在数据行内存放一个16字节的指针,指向一个根结构,根结构组成了一棵,B,树的根节点,,B,树的叶节点指向实际存放数据的数据块,将大对象数据类型的数据存储在数据行中,避免了多次查找数据块位置,可提高性能,用,sp_tableoption,来设置表的,text in row,选项,查看表的,text in row,选项:,objectproperty,函数,3.2.2,SQL Server,组织,text,、,ntext,和,image,数据的方式,text、ntext 和 image 数据的方式Text、n,text,、,ntext,和,image,数据的方式(续),数据行,text,指针,根结构,中间节点,中间节点,块 1,块 2,块 1,块 2,3.2.2,SQL Server,组织,text,、,ntext,和,image,数据的方式,text、ntext 和 image 数据的方式(续)数据行,创建表,命名表和列:数据库名.拥有者.表名,数据库名默认为当前的工作数据库,拥有者默认为当前用户或者数据库的拥有者,指定,NULL,或者,NOT NULL,确定列值是否可为空,默认按照会话或者数据库的默认值设定,计算列,是一个虚的列,并不物理存放在表中,当取列值的时候,,SQL Server,根据其他列的值和一,个公式计算出列值,创建和删除表,3.2.3,创建和删除表,创建表创建和删除表3.2.3 创建和删除表,分隔标识符,命名规则:保留字,如,table、create、select,等,不能作为对象标识符,不符合标识符格式规则的标识符必须使用分隔符,删除表,DROP TABLE,表名,n,创建和删除表(续),3.2.3,创建和删除表,CREATE TABLE customer(name char(30),column char(12),CREATE TABLE customer(name char(30),“,column,”,char(12),CREATE TABLE customer(name char(30),column,char(12),注:仅当,QUOTED_IDENTIFIER,选项设置为,ON,时,被引 用的标识符才有效,SET QUOTED_IDENTIFIER ON,分隔标识符创建和删除表(续)3.2.3 创建和删除表CRE,添加和删除列,3.2.4,添加和删除列,添加列,语法:,ALTER TABLE,表名,ADD,列名,数据类型,NULL|NOT NULL,ALTER TABLE XS,ADD,奖学金等级,tinyint NULL,GO,ALTER TABLE XS,ALTER COLUMN,姓名,char(10),ALTER COLUMN,出身时间,datetime,GO,添加和删除列3.2.4 添加和删除列添加列ALTER TA,添加和删除列(续),3.2.4,添加和删除列,删除列,语法:,ALTER TABLE,表名,DROP COLUMN,列名,n,不能删除以下列,正在复制的列,用在索引中的列,用在,CHECK、FOREIGN KEY、UNIQUE,或,PRIMARY KEY,约束中的列,与,DEFAULT,定义关联或绑定到某一默认对象的列,绑定到规则的列,添加和删除列(续)3.2.4 添加和删除列删除列,课堂练习 添加列,添加一个数值列,添加列描述,设置精度和小数位数,设置列为标识列,添加一个,GUID,列,添加一个日期列,添加一个字符列,保存并关闭表设计器,课堂练习 添加列添加一个数值列,第,4,章 创建数据类型和表,创建数据类型,创建表,生成列值,生成脚本,推荐操作,第4章 创建数据类型和表创建数据类型,生成列值,使用,Identity,属性,使用,NEWID,函数和,uniqueidentifier,数据类型,3.3,生成列值,生成列值使用 Identity 属性3.3 生成列值,使用,Identity,属性,使用,Identity,属性的要求,每个表只能有一个标识列,只用在,int、smallint、tinyint,和,decimal,数据类型上。若用于,decimal,,小数位数必须为0,标识列不能进行更新操作,标识列不允许空值,在查询中,可以用关键字,IDENTITYCOL,来代表一个表中的标识列,使得不必指明标识列的列名,增加了灵活性,3.3.1,使用,Identity,属性,使用 Identity 属性使用 Identity 属性的要,使用,Identity,属性(续),检索,Identity,属性的信息,使用全局变量,identity,获得,当前会话的所有作用域,中的任何表最后生成的标识值,例如:,select identity from Employees,返回,Employees,表中的标示列的最后一行的值,使用函数,IDENT_CURRENT,返回任何会话和任何作用域中的特定表最后生成的标识值,例如:,select IDENT_CURRENT(,Employees,),管理,Identity,属性,设置,IDENTITY_INSERT,为,ON,,可在,IN
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!