第3章 数据表和索引.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 数据表和索引 本章主要内容: 3.1 SQL Server 数据表 3.1.1 数据表 SQL Server 2000表的类型 系统表 同数据库一样,SQL Server2000中的表也分为系统表和用户表。 系统表存储有关SQL Server系统行为信息的数据,无论是系统数据库还是用户数据库,都包含系统表。 用户数据库里的系统表是在创建数据库时从Model系统数据库中复制而来的。 系统表的表名都以“sys”作前缀,且在企业管理器中显示时类型都标有“系统”二字。 用户表 用户表是数据库中真正存放用户数据的“容器”,是数据库设计的关键。 3.1.2 表的设计 设计数据库时,应先确定需要什么样的数据表、各数据表中都有哪些数据、各个表之间的关系以及用户对各个表数据的存取权限等。 在创建和操作数据表的过程中,将对数据表进行更为细致的设计。 设计时应注意以下内容: 表所包含的数据类型。 表的各列及每一列的数据类型。 哪一列或哪几列的组合为主键。 哪些列允许空值。 是否要使用约束、默认设置等来限制列。 是否要设置外键约束表与表之间的联系。 哪里需要索引,所需索引的类型。 3.1.3 数据类型 SQL Server 2000 的数据类型分为基本数据类型和用户定义数据类型二种。 系统数据类型是SQL Server系统固有的,可直接使用的数据类型; 用户定义数据类型是基于系统数据类型和有关参数修改整合而来,用于增强基本数据类型的功能,或方便用户在多个列中设置的数据类型和参数保持一致。 1.常用系统数据类型 (1)数字类型 数字类型数据只包含数字和正负号(对非整型还有小数点),可进行算术运算或直接放入表达式中。 数字类型数据包括整型数据、小数数据和浮点数据三种。 整型数据 整型数据由负整数或正整数组成,如 -15、0、5 和 2509。 在SQL Server 2000 中,整型数据使用 bigint、int、smallint、tinyint 和bit数据类型存储。 存储数据大小依次为: bigint数据类型int数据类型smallint数据类型 tinyint数据类型 bit 数据类型只能包括 0 或 1。可以用 bit 数据类型表示TRUE或FALSE、YES或NO这样的逻辑数据。 小数数据 在 SQL Server中,带小数的数据使用 decimal 或 numeric 数据类型存储。 这种数字类型的描述,一般要用圆括号内的数字指出精度和小数位数。如需要一个精度为7,小数位数为3的带小数类型,可描述为 dicimal(7,3) 或 numeric(7,3) 。在 SQL Server中,numeric 数据类型等价于 decimal 数据类型。 浮点数据 浮点数据包括按二进制计数系统所能提供的最大精度保留的数据。 在 SQL Server 中,浮点数据以 float(双精度)和real(单精度)数据类型存储。 由于在实际使用中,对大多数使用浮点数据类型的应用程序,指定的精确值与近似值之间的差异并不明显,且浮点类型的字段不适宜进行大小比较,所以应尽可能使用decimal或numeric类型而避免用浮点数据类型。 (2)货币类型 在SQL Server 2000 中使用 money 和 smallmoney 数据类型存储货币数据。 货币数据存储的精确度为四位小数。 如果数值超过了上述范围(或需超过4位小数的精度),则可使用 decimal 数据类型代替。 (3)字符类型 字符类型数据由字母、数字和符号组成。 例如,“928”、“张三”、“(0*(%B99nh? jkJ”等。 在SQL Server 2000 中,字符数据类型分为单字符串数据类型和双字符串数据类型。 单字节字符串数据类型:一个字符一个字节 定长char:空间不足截断尾部,空间多余空格填充; 变长varchar:空间不足截断尾部,多余空间不填空格; (4)日期时间类型 默认时间是“00:00:00.000”,默认的日期是“1899-12-30”。 在SQL Server 2000 中,日期和时间数据使用 datetime 和 smalldatetime 数据类型: datetime 类型存储从1753年1月1日至9999年12月31日的日期(每个数值要求8个字节的存储空间)。 smalldatetime类型存储从1900年1月1日至2079年6月6日的日期(每个数值要求4个字节的存储空间)。 (5)二进制类型 在SQL Server 2000中,二进制数据使用binary、varbinary和image数据类型存储。 binary数据类型的列在每行中都是固定的长度(最多为8KB)。 varb

文档评论(0)

光光文挡 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档