第2讲 数据表的创建与管理_第1页
第2讲 数据表的创建与管理_第2页
第2讲 数据表的创建与管理_第3页
第2讲 数据表的创建与管理_第4页
第2讲 数据表的创建与管理_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2讲数据表的创建与管理一.基础知识表是数据库中存储数据的基本对象。在设计数据库结构时,一个重要的工作就是设计表结构。表结构的设计通常需要考虑下面的因素:数据库中包含哪些表;每个表中包含哪些字段;表中字段的属性,包括字段的数据类型、宽度、默认值等1、SQLServer的基本数据类型

(1)二进制数据Binary:固定长度的二进制数据Varbinary:变长的二进制数据类型Image:可以用来存储超过8KB的可变长度的二进制数据。存储MicrosoftWord文档、MicrosoftExcel电子表格、包含位图的图像、GIF文件和JPEG文件等多种格式的数据。(2)字符数据:由字母、符号和数字组成。Char:固定长度的字符数据类型。Char[(n)]表示长度为n个字节的固定长度且非Unicode的字符数据。Varchar:非固定长度的字符数据类型。Varchar[(n)]表示长度最多为n个字节的可变长度且非Unicode的字符数据。Text:存储可变长度的非Unicode数据,可用于存储大于8KB的ASCII字符。最大长度为231-1(2,147,483,647)个字符在设计表结构时,如果需要存储的字符数据长度小于8KB,则使用Char或Varchar。使用Varchar数据类型可以按照数据的实际长度进行存储,从而节省存储空间。当数据长度超过8KB时,使用Text数据类型进行存储。例如,由于HTML文档均由ASCII字符组成,而且一般长于8KB,所以在SQLServer中通常把HTML文档存储在Text列中。(3)Unicode数据

Unicode字符集就是为了解决字符集不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示

Nchar,

Nvarchar,Ntext:(4)日期和时间数据日期和时间数据使用Datetime和Smalldatetime数据类型存储。Datetime:从1753年1月1日到9999年12月31日的日期和时间数据Smalldatetime:从1900年1月1日到2079年6月6日的日期和时间数据,精确到分钟。(5)数字数据SQLServer的数字数据包括正数、负数、小数、分数和整数。Bigint:-263~263-1之间的所有整型数据。l

Int:-231~231-1之间的所有整型数据。Smallint:-215(-32768)~215-1(32767)之间的整型数据。Tinyint:0~255之间的整型数据。Decimal和Numeric:带定点精度和小数位数的数字数据类型。Decimal[(p[,s])]和Numeric[(p[,s])]表示定点精度和小数位数。p表示精度Float[(n)]:-1.79E+308~1.79E+308之间的浮点数字数据。Real:-3.40E+38~3.40E+38之间的浮点数字数据。(6)货币数据货币数据表示正的或负的货币值。在MicrosoftSQLServer中使用Money和Smallmoney数据类型存储货币数据。Money:货币数据值介于-263~263-1。Smallmoney:货币数据值介于-214748.3648~+214748.3647之间。(7)特殊数据特殊数据包括不能用前面所述的二进制、字符、Unicode、日期和时间、数字和货币数据类型表示的数据。SQLServer包含四种特殊数据类型:timestamp

bit:bit数据类型只能包括0或1。uniqueidentifiertableSQLServer数据库中,数据表的基本操作有:表的创建、修改、删除记录的插入、修改、删除实现这些操作主要有二种途径:使用企业管理器通过T-SQL语句创建表

二.

SQLServer数据表的基本操作(1)创建表:展开企业管理器上的数据库节点,从中选择一个要建立表的数据库,在鼠标右键单击出来的快捷菜单中选择“新建”,子菜单,选择“表”命令。第一列中输入列名,第二列选择数据类型,第三列输入长度,第四列选择是否为空(2)修改表:从树形结构展开要修改定义的表所在数据库,并选中该数据库节点下面的表节点,在企业管理器右侧显示出该数据库下全部表格。选择要修改的表,单击鼠标右键,从弹出的快捷菜单中选择“设计表”命令,其余操作和最初建立表格时一样

1、使用企业管理器(3)删除表:若要删除表,则基本表的定义、表中的数据、索引,以及由此表导出的视图定义都被删除,而且所有的内容被删除后无法恢复。只有有权限的人员才能删除表。删除操作不能删除正在用于外键码约束引用的表,要删除此类表,必须先删除引用的外键码约束或删除引用的表

从树形结构展开要修改定义的表所在数据库,并选中该数据库节点下面的表节点,在企业管理器右侧显示出该数据库下全部表格。选择要修改的表,单击鼠标右键,从弹出的快捷菜单中选择“删除”—“全部除去”命令,即可(4)插入记录:

展开“数据库”节点,展开所选择的具体数据库节点,展开“表”节点,右键要插入纪录的表,选择“打开表”命令,选择“返回所有行”,即可输入纪录值(5)修改记录:如同插入记录的方法,利用“打开表”命令,选择“返回所有行”打开数据表,在对应位置直接进行修改(6)删除记录:如同插入记录的方法,利用“打开表”命令,选择“返回所有行”打开数据表,右击要删除的行,选择“删除”命令即可。(1)创建数据表格式:CREATETABLE表名(列名1数据类型约束,列名2数据类型约束,

列名n数据类型约束)2、使用T-SQL语言约束:实现表的完整性DEFAULT常量表达式:默认值约束。NULL/NOTNULL:空值(默认)/非空值约束。PRIMARYKEY:主键约束。例1:在数据库Manager中建立一个表student。要求:Student_id列为非空列且为主键;sex列中1表示男性,0表示女性,默认值为1;其他列可以为空textCreatetablestudent(student_idchar(6)notnullPRIMARYKEY,namevarchar(20),sexbitdefault1,birthdaysmalldatetime,entrancescoresmallint,department_idchar(4),photoimage,notetext)例2:在数据库Manager中建立一个表scoreCreatetablescore(student_idchar(6),subject_idchar(4),scoresmallint,examination_datesmalldatetime)(2)修改数据表格式:ALTERtable表名[ALTERCOLUMN列名列定义]|[ADD列名

类型约束]|[DROPCOLUMN列名1,列名2,…]注意:ALTERTABLE只允许添加可包含空值或指定了DEFAULT定义的列除DROP外,ALTERTABLE命令一次只允许更改表的一个属性或修改一列

例3:修改数据库manager中的表score,添加列名为pre_subject(表示先修课程)的一列,要求数据类型为varchar(20);再添加列名为suc_subject(表示后继课程)的一列,要求数据类型为varchar(20),可空AltertablescoreAddpre_subjectvarchar(20)AltertablescoreAddsuc_subjectvarchar(20)例4:删除刚才对表score添加的列AltertablescoreDropcolumnpre_subject,sub_subject(3)删除数据表

DROPTABLE

表名

例5:删除数据表droptablescore(4)插入记录INSERT

[INTO]

表名[(列名1,列名2,…)]

VALUES(值1,值2,…)注:通常INSERT命令一次只能插入一行数据插入一行所有列的值时,列名可省略不写例6:在表student中插入下列数据,其中photo数据暂时不输入insertstudent(student_id,name,sex,birthday,entrancescore,department_id,note)values(‘031001’,’张平’,1,’85/12/1’,600,’jx10’,’机械’)insertstudent(student_id,name,sex,birthday,entrancescore,department_id,note)values(‘031002’,’王丽’,0,’86/2/24’,590,’jx10’,’机械’)(5)修改记录格式UPDATE

表名SET列名1=表达式,…列名n=表达式[where逻辑表达式]例6:修改student表中的entrancescore列,使所有小于600的值改为nullupdate

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论