第五章 表.pptVIP

  • 0
  • 0
  • 约5.38千字
  • 约 33页
  • 2018-06-06 发布于河北
  • 举报
第五章 表

知 识 框 架 任务引入 在上一章中我们学会了建立数据库,那么数据库相当于一个容器,我们要向中间填塞数据,这些数据以什么样的形式存在呢,答案是“表”,那么怎样向表中填塞数据呢?表保存的数据之间有什么关系吗?有关系的话,这些关系如何在数据库中实现才不至于产生乱七八糟的数据或者一些无用的数据? 5.1 表 5.1.1 表的基本概念 表是数据库基本的逻辑存储单位,在关系数据库中都表现为二维表,由行和列组成,如下表所示。 在数据库中实际建表之前 ,要充分考虑到以下几点 : (1)数据库中应该有哪些基本表 (2)表中有哪些列,列的名字,每列的数据类型和长度,该列能否为空等 . (3)表中哪些列 需要约束等 (4)表中的哪些列的数据有效范围需要限定 5.1.2 数据类型 SQL Server 2005提供了一系列系统定义的数据类型,它是数据库对象的一个属性,选择正确的数据类型,是筛选进入表中的数据的第一层约束。 数据类型主要有下面几部分构成。 1、数据类别,例如字符类型,数据类型或二进制类型 2、数据值的宽度和长度大小,如允许输入的字符最大值为20个字符 3、数值的精度,比如商品价格一般小数部分是2或3位,整数部分几位由具体情况而定。 5.1 表 5.1.3 创建表 学生成绩管理系统是针对学生选课和成绩管理设计的,依据第二章的关系模型我们可以得到该数据库至少包含学生表Student、学校的课程表Course、成绩登记表Score和班级信息表Class。 创建表的方法主要有两种,使用Management Studio创建和使用Transact-SQL语句创建,下面分别来介绍这两种方法 表 5-1 学生表Student 所有列都添加好后结果如图5-3 2.使用T-SQL语句创建表 创建表的基本语法格式如下: CREATE TABLE table_name ( Column name col_properties Column name col_properties [,…] ) 说明: table_name:定义表名 Column name:列名 col_properties 列属性,包括列的数据类型,是否为空,约束等等 【例5.3】用T-SQL语句创建班级表Class。 编辑SQL语句完成建表; Use CJGL Go --创建班级表Class-- Create Table Class ( ClaNo smallint IDENTITY(001,1) NOT NULL, --班级编号从“001”开始自动生成 ClaName nvarchar (20) NOT NULL, Department nvarchar (20) NULL, Number smallint NULL ) IDENTITY标识列 【注意】IDENTITY属性的一般语法格式如下 IDENTITY [ (seed , increment) ] 参数 seed 装载到表中的第一个行使用的值。 increment 与前一个加载的行的标识值相加的增量值。 必须同时指定种子和增量,或者二者都不指定。如果二者都未指定,则取默认值 (1,1)。 【思考练习】以下给出选课表Score的逻辑模型如下表5-4所示。读者试着自己给出相应的T-SQL脚本语句。 管理表 ALTER TABLE table --修改的表名称 { ALTER COLUMN column_name --修改已有的列名 { new_data_type [ ( precision [ , scale ] ) ] --新的数据类型 | ADD --添加新列 { [ column_definition ] --添加列的定义 | DROP --删除列 COLUMN column } [ ,...n ] --要删除列的列名 } 5.2表数据操作 1.向表中插入数据 a. 使用INSERT INTO…语句插入数据 INSERT [ INTO] object [ ( column_list ) ] //表名(列1,列2,列3,…) VALUES ( { DEFAULT | NULL | expression }

文档评论(0)

1亿VIP精品文档

相关文档