- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQLServer创建一个表.
要完成本章各课的学习,必须完成以下准备工作。
已经安装SQL Server 2005。
? 在SQL Server 2005实例上已经安装了AdventureWorks示例数据库的一个副本,或者创建了一个空的数据库。
第1课? 创建表
理解数据类型
为一个列选择数据类型时,应选择允许你期望存储的所有数据值的数据类型,同时使所需的空间量最小。SQL Server数据类型有7类,如表3.1所示。
表3.1? SQL Server的7类数据类型
数据类型分类 基本目的 (1)精确数字 存储带小数或不带小数的精确数字 (2)近似数字 存储带小数或不带小数的数值 (3)货币 存储带小数位的数值;专门用于货币值,最多可以有4个小数位 (4)日期和时间 存储日期和时间信息,并强制实施特殊的年代规则,如拒绝2月30日这个值 (5)字符 存储基于字符的可变长度的值 (6)二进制 存储以严格的二进制(0和1)表示的数据 (7)专用数据类型 要求专门处理的复杂数据类型,诸如XML文档或者全局唯一的标识符(GUID) 精确数字数据类型
精确数字数据类型用来存储没有小数位或有多个小数位的数值。使用任何算术运算符都可以操纵这些数据类型中存储的数值,而不需要任何特殊处理。精确数字数据类型的存储也是精确定义的,因此,无论是Intel处理器架构还是AMD处理器架构,这些数据类型中存储的任何数据都返回和计算得到相同的值。表3.2列出了SQL Server支持的精确数字数据类型。
表3.2? 精确数字数据类型
数据类型 存储 值域 作用 bigint 8字节 -2E63~2E63-1 存储非常大的正负整数 int 4字节 -2E31~2E31-1 存储正负整数 smallint 2字节 -32 768~32 767 存储正负整数 tinyint 1字节 0~255 存储小范围的正整数 decimal(p,s) 依据不同的精度,需要5~17字节 -10E38+1~10E38-1 最大可以存储38位十进制数 numeric(p,s) 依据不同的精度,需要5~17字节 -10E38+1~10E38-1 功能上等价于decimal,并可以与decimal交换使用 decimal和numeric数据类型接受参数来完成数据类型定义。这些参数定义数据类型的精度和小数位数。例如,decimal(12,4)定义了一个总共有12位数字的十进制值,其中小数点后面有4位数字。
在这组数据类型中,int和dedcimal是最常用的数据类型。使用decimal数据类型可以存储整型值,但这么做每行需要额外的存储字节,因此不要这么使用decimal数据类型。如果在一个列中打算存储的值的范围不超过32 767,则通过使用smallint代替int,每行可以节省2个字节。如果取值范围只是在0和255之间,则通过使用tinyint数据类型,每行可以节省3个字节。
近似数字数据类型
近似数字数据类型可以存储十进制值。然而,float或real数据类型中存储的数据,只能精确到数据类型定义中指定的精度。不能保证小数点右边的所有数字都被正确存储。例如,如果把1储在一个定义为float(8)的数据类型中,则该列只能保证精确地返回1.000154。SQL Server存储数据时对小数点右边的数进行四舍五入。因此,涉及这些数据类型的计算,会出现舍入误差。在Intel处理器和AMD处理器之间传输包含涉及这些数据类型的表的数据库时,也会引入误差。表3.3列出了SQL Server支持的近似数字数据类型。
表3.3? 近似数字数据类型
数据类型 存储 取值范围 作用 float(p) 4或8个字节 -2.23E308~2.23E308 存储大型浮点数,超过十进制数据类型的容量 real 4个字节 -3.4E38~3.4E38 仍然有效,但为了满足SQL-92标准,已经被float替换了 float数据类型在定义时接受一个参数,该参数决定了精确存储的位数。例如,一个float(8)列精确存储7位数字,任何超过该数的位数都会遭遇舍入误差。
由于这些数据类型是不精确的,所以几乎不使用它们。只有在精确数据类型不够大,不能存储数值时,才可以考虑使用float。
货币数据类型
货币数据类型旨在存储精确到4个小数位的货币值。表3.4列出了SQL Server支持的货币数据类型。
表3.4? 货币数据类型
数据类型 存储空间 取值范围 作用 money 8字节 -922?337?203?685?477.5808~
922?337?203?685?477.5807 存储大型货币值 smallmoney 4字节 -214?748.3648~214?748.3647 存储小型货
您可能关注的文档
- SQL2008数据库维护计划操作步骤..doc
- SQLServer2000企业版安装教程..doc
- SQLSERVER2000数据库备份..doc
- SQLSERVER2000学习完整版..doc
- SQLSERVER2005如何建立自动备份的维护计划..doc
- SQLServer2005连接字符串代码..doc
- SQLServer2005高可用性之复制..doc
- SQLserver2005群集..doc
- SQLServer2008安装图解..docx
- SQLServer2008安装教程..doc
- 2024年湖南省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年江西省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年安徽省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年福建省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年广东省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年河北省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年河南省高考英语试卷(含答案解析)+听力音频.docx
- 2024年湖北省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年湖南省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年江苏省高考英语试卷(含答案解析)+听力音频+听力原文.docx
文档评论(0)