数据库中表的基本操作1.ppt_第1页
数据库中表的基本操作1.ppt_第2页
数据库中表的基本操作1.ppt_第3页
数据库中表的基本操作1.ppt_第4页
数据库中表的基本操作1.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

第四章 数据库中表的基本操作,4.1 SQL Server表概述,4.3 表结构的修改,4.4 表的删除,4.2 数据库中表的创建,4.5 表中数据的添加,4.7 应用举例,4.6 数据库中表的查看,第四章,目录,表的概念 关系数据库的理论基础是关系模型,它直接描述数据库中数据的逻 辑结构。关系模型的数据结构是一种二维表格结构,在关系模型中现实世界的实体与实体之间的联系均用二维表格来表示,在SQL Server数据库中,表定义为列的集合,数据在表中是按行和列的格式组织排列的。每行代表唯一的一条记录,而每列代表记录中的一个域。 2 SQL Server表与关系模型的对应 SQL Server数据库中表的有关术语与关系模型中基本术语 之间的对应关系如表4.2所示。 3表的设计 对于开发一个大型的管理信息系统,必须按照数据库设计理论与设 计规范对数据库专门的设计,这样开发出来的管理信息系统才能既满足用户需求,又具有良好的可维护性与可扩充性。,4.1.1 SQL Server表的概念,4.1 SQL Server表概述,第四章,4.1.2 SQL Server 2000数据类型,1. 二进制数据 二进制数据常用于存储图像等数据,它包括二进制数据binary、变长二进制数据类型varbinary和image3种 2. 字符型数据类型 字符型数据用于存储汉字、英文字母、数字、标点和各种符号,输入时必须由英文单引号括起来。字符型数据有定长字符串类型char、变长字符串类型varchar和文本类型3种。 3. Unicode字符数据 Unicode标准为全球商业领域中广泛使用的大部分字符定义了一个单一编码方案。所有的计算机都用单一的Unicode标准,Unicode数据中的位模式一致地翻译成字符,这保证了同一个位模式在所有的计算机上总是转换成同一个字符。数据可以随意地从一个数据库或计算机传送到另一个数据库或计算机,而不用担心接收系统是否会错误地翻译位模式。Unicode字符数据有定长字符型nchar、变长字符型nvarchar和文本类型ntext3种。,第四章,4. 日期时间型数据 日期时间型数据用于存储日期和时间数据,日期时间型数据类型包括datetime和smalldatetime。 5. 整数型数据 整数型数据用于存储整数,有biging,int,smallint和tinyint4种类型。 6. 精确数值型数据 精确数值型数据用于存储带有小数点且小数点后位数确定的实数。主要包括decimal和numeric两种。 7. 近似数值数据 近似数值型数据用于存储浮点数,包括float和real两种。 8. 货币数据 货币数据由十进制货币的数值数据组成,货币数据有money和smallmoney两种。 9. 位类型数据 位类型数据用于存储整数,只能取1,0或NULL,常用于逻辑数据的存储。在位类型的字段中输入0和1之外的任何值,系统都会作为1来处理。如果一个表中有8个以下的位类型数据字段,则系统会用一个字节存储这些字段,如果表中有9个以上16个以下位类型数据字段,则系统会用两个字段来存储这些字段。,第四章,在SQL Server中建立了数据库之后,就可以在该数据库中创建表了。创建表可以在企业管理器和在查询分析器中使用T-SQL语言两种方法进行。不管哪种方法,都要求用户具有创建表的权限,默认情况下,系统管理员和数据库的所有者具有创建表的权限。,4.2 数据库中表的创建,4.2.1 使用企业管理器创建表,1 创建表的步骤 创建表一般要经过定义表结构、设置约束和添加数据三步,其中设置约束可以在定义表结构时或定义完成之后建立。 (1)定义表结构:给表的每一列取字段名,并确定每一列的数据类型、数据长度、列数据是否可以为空等。 (2)设置约束:设置约束是为了限制该列输入值的取值范围,以保证输入数据的正确性和一致性。 (3)添加数据:表结构建立完成之后,应该向表中输入数据。,第四章,(1)打开企业管理器,展开控制台根目录,依次展开服务器组、服务器、数据库节点,选择在其中建立表的数据库,这里我们选择Student数据库,如图4.1所示,用鼠标右键单击“表”图标,在弹出的快捷菜单中选择“新建表”命令,启动表设计器,如图4.2所示。 (2)在表设计器窗口上部网格中,每一行描述了表中一个字段,每行有四列,这四列分别描述了列名、数据类型、数据长度和允许空等属性 (3)插入、删除列。在定义表结构时,可以在某一字段的上边插入一个新字段,也可以删除一个字段。方法是,在表设计器窗口的上部网格中用鼠标右键单击该字段,在弹出的菜单中选择“插入列”或“删除列”,如图4.3所示。 (4)保存表。单击表设计器工具栏上的“保存”按钮,出现保存对话框,如图4.4所示,输入“班级”并单击“确定”按钮,然后关闭表设计器完成表的定义。,2. 创建表(图见教材),第四章,CREATE TABLE语句的语法 CREATE TABLE database_name.owner.table_name ( |column_name as computed_column_expression |:=CONSTRAINT constraint_name |PRIMARY KEY|UNIQUE,n ) ON filegroup|DEFAULTTEXTIMAGE_ONfilegroup|DEFAULT 其中的语法如下: :=column_name data_type NULL|NOT NULL DEFAULT constant_expression |IDENTITY(seed,increment)NOT FOR REPLICATION ROWGUIDCOLCOLLATE n,4.2.2 使用T-SQL语句创建表,第四章,参数含义说明: database_name:指定新建表所置于的数据库名,若该名不指定就会置于当前数据库中。 owner:指定数据库所有者的名称,它必须是database_name所指定的数据库中现有的用户ID。 Table_name:指定新建表的名称,需在一个数据库中是唯一的,且遵循T-SQL语言中的标识符规则,表名长度不能超过128个字符,对于临时表则表名长度不能超过116个字符。 column_name:指定列的名称,在表内必须唯一。 computed_column_expression:指定该计算列定义的表达式。 ONfilegroup|DEFAULT:指定存储新建表的数据库文件组名称。如果使用了DEFAULT或省略了ON子句,则新建的表会存储在数据库的默认文件组中。 TEXTIMAGE_ON:指定TEXT、NTEXT和IMAGE列的数据存储的数据库文件组。若省略该子句,这些类型的数据就和表一起存储在相同的文件组中。如果表中没有TEXT、NTEXT和IMAGE列,则可以省略TEXTIMAGE_ON子句。 data_type:指定列的数据类型,可以是系统数据类型或者用户自定义数据类型。 NULL|NOT NULL:说明列值是否允许为NULL。在SQL Server中,NULL既不是0也不是空格,它意味着用户还没有为列输入数据或是明确地插入了NULL。 IDENTITY:指定列为一个标识列,一个表中只能有一个IDENTITY标识列。当用户向数据表中插入新数据行时,系统将为该列赋予唯一的、递增的值。IDENTITY列通常与PRIMARY KEY约束一起使用,该列值不能由用户更新,不能为空值,也不能绑定默认值和DEFAULT约束。 seed:指定IDENTITY列的初始值。默认值为1。 increment:指定IDENTITY列的列值增量,默认值为1。 NOT FOR REPLICATION:指定列的IDENTITY属性,在把从其他表中复制的数据插入到表中时不发生作用。 FOWGUIDCOL:指定列为全局唯一标识符列。此列的数据类型必须为UNIQUEDENTIFIER类型,一个表中数据类型为UNIQUEDENTIFIER的列中只能有一个列被定义为FOWGUIDCOL列。FOWGUIDCOL属性不会使列值具有唯一性,也不会自动生成一个新的数值给插入的行。,第四章,2. CREATE TABLE语句的使用,图4.5 用T-SQL语句创建系部表,第四章,4.3 表结构的修改,4.3.1 使用企业管理器修改表结构 (1)打开企业管理器,展开“服务器组服务器数据库”节点,选择相应的数据库,展开表对象。 (2)在企业管理器的明细窗格中,用鼠标右键单击要修改的表,在弹出的快捷菜单中选择“设计表”命令,打开表设计器。 (3)在表设计器中修改各字段的定义,如字段名、字段类型、字段长度、是否为空等。 (4)添加、删除字段。如果要增加一个字段,将光标移动到最后一个字段的下边,输入新字段的定义即可。如果要在某一字段前插入一个字段,用鼠标右键单击该字段,在弹出的快捷菜单中选择“插入列”命令。如果要删除某列,用鼠标右键单击该列,在弹出的快捷菜单中选择“删除列”命令。,第四章,4.3.2 使用T-SQL语句修改表结构 使用ALTER TABLE语句可以对表的结构和约束进行修改。ALTER TABLE语句的语法格式如下: ALTER TABLE table_name ALTER COLUMN column_name new_data_type (precision,scale)collate NULL|NOT NULL|ADD|DROP ROWGUIDCOL |ADD |column_name AS computed_column_expression,n |WITH CHECK|WITH NOCHECKADD ,n |DROP CONSTRAINTconstraint_name|COLUMN column,n |CHECK|NOCHECKCONSTRAINT ALL|constraint_name,n |ENABLE|DISABLETRIGGERALL|trigger_name,n ,第四章,参数含义说明: table_name:要更改的表的名称。若表不在当前数据库中或表不属于当前用户,就必须指定其的列所属的数据库名称和所有者名称。 ALTER COLUMN:指定要更改的列。 new_data_type:指定新的数据类型名称。 precision:指定新数据类型的精度。 scale:指定新数据类型的小数位数。 WITH CHECK|WITH NOCHECK:指定向表中添加新的或者打开原有的FOREIGN KEY约束或CHECK约束的时候,是否对表中已有的数据进行约束验证。对于新添加的约束,系统默认为WITH CHECK,WITH NOCHECK作为启用旧约束的缺省选项。该参数对于主关键字约束和唯一性约束无效。 ADD|DROPROWGUIDCOL:添加或删除列的ROWGUIDCOL属性。ROWGUIDCOL属性只能指定给一个UNIQUEIDENTIFIER列。 ADD:添加一个或多个列。 computed_column_expression:计算列的计算表达式。 DROPCONSTRAINTconstraint_name|COLUMN column_name:指定要删除的约束或列的名称。 CHECK|NOCHECKCONSTRAINT:启用或禁用某约束,若设置ALL则启用或禁用所有的约束。但该参数只适用于CHECK和FOREIGN KEY约束。 ENABLE|DISABLETRIGGER:启用或禁用触发器。当一个触发器被禁用后,在表上执行INSERT、UPDATE或者DELETE语句时,触发器将不起作用,但是它对表的定义依然存在。ALL选项启用或禁用所有的触发器。Trigger_name为指定触发器名称。,第四章,4.4 表的删除,由于应用的原因,有些表可能不需要了,对于不需要的表,可以将其删除。一旦表被删除,表的结构、表中的数据、约束、索引等都将被永久地删除。删除表的操作可以通过企业管理器完成,也可以通过DROP TABLE语句完成。,4.4.1 使用企业管理器删除表 【例4.7】在student数据库中删除“教师”表。 操作步骤如下: (1)打开企业管理器,展开“服务器组服务器数据库”节点,选择相应的数据库并展开其中的表结点。 (2)在企业管理器的明细窗格中,用鼠标右键单击要删除的表,在弹出的快捷菜单中选择“删除”命令,出现如图4.6所示的“除去对象”对话框,单击“全部除去”按钮可删除表。,第四章,4.4.2 使用DROP TABLE语句删除表 【例4.8】在student数据库中删除“系部”表。 在查询窗口中输入如下命令: USE student GO DROP TABLE系部 GO,图4.6 “除去对象”对话框,第四章,4.5 表中数据的添加 4.5.1 使用企业管理器向表中添加数据 (1)在企业管理器中,依次展开“服务器组服务器数据库”节点,选择相应的数据库并展开其中的表结点,在明细窗格中用鼠标右键单击“系部”表,弹出如图4.7所示的快捷菜单,单击“打开表/返回所有行(A)”命令,就会打开查询设计器的结果窗口,如图4.8所示。 (2)输入数据。在查询设计器的表中可以输入新记录,也可以修改和删除已经输入的记录。将表4.8“系部”表中的数据输入到“系部”表中,如图4.8所示。,图4.7 输入数据,图4.8 查询设计器的结果窗口,第四章,4.5.2 使用INSERT语句向表中添加数据,【例4.10】使用INSERT语句向student数据库的“系部”表中添加新记录。 在查询分析器的查询窗口中输入如下语句: USE student GO INSERT 系部 Values(03,数学系,徐裕光) GO,在查询分析器中,使用INSERT语句将一行新的记录添加到一个已经存在的表中。关于INSERT语句的详细用法在第五章介绍。,第四章,4.6.1 查看表结构 可以使用企业管理器和系统存储过程查看表结构。 (1)使用企业管理器查看。依次展开“服务器组服务器数据库”节点,选择相应的数据库并展开其中的表结点,在明细窗格中用鼠标右键单击表(如“系部”表),弹出如图4.7所示的快捷菜单,选择“属性”命令,出现表属性对话框,如图4.10所示。单击“常规”和“全文索引”标签查看表信息。 2)使用系统存储过程sp_help查看。其语法格式为: EXECUTE sp_help 表名 例如,查看student数据库中“专业”表的结构,使用下列语句: USE st

温馨提示

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

评论

0/150

提交评论