数据库设计第3章表
第3章 数据库和表
2) “查找内容”文本框中输入要查找的内容,此处输入“空运”; 在“替换为”文本框中输入将要替换的内容,此处输入“海运”。
3.4 维护表
3.4.1 向表中输入数据
图3-42 在“产品”表添加数据
3.4.2
1.重命名字段
修改表的结构
图3-43 重命名字段
2.修改字段数据类型 3.编辑字段
3.4.2
1) 插入行。
修改表的结构
图3-44 插入行示例
3.4.2
修改表的结构
图3-45 确定是否删除行
2) 删除行。 3) 更改主键。
3.2.4 使用设计器创建表
图3-27 “订单”表的数据表视图
1) 在“产品订单”数据库中双击“使用设计器创建表”,
3.2.4 使用设计器创建表
将弹出如图3-28所示的表设计器。
图3-28 表设计器
2) 在“字段名称”列中输入表的字段名进行字段定义,在“数据类 型”列单击下拉箭头可显示所有数据库类型的列表框,
编辑表的内容
2) 选定数据后,就可以直接在刚才选定的单元格上输入要修改的内 容,同时可以看到,最左边框上的图标变为了,如图3-49所示。
图3-49 修改“订单”表中数据
3) 数据修改完成后,按“Enter”键或箭头键,可以控制光标在单元 格之间移动,也可以设置移动方式,单击“工具→选项”然后在弹 出的“选项”对话框中选择“键盘”选项卡,在这里可以进行设置, 如图3-50所示。
图3-19 “表向导”对话框2
3.2.2 使用向导创建表
4) 在图3-19所示的对话框中,我们可以指定表的名称为“产品”, 及设定表中主键字段为“产品标识”。
图3-20 “表向导”对话框3
3.2.2 使用向导创建表
数据库管理系统VFP-第三章
1
本章要点
3.1 面向对象的程序设计
3.2 创建表单
表单的属性、 3.3 表单的属性、事件和方法
3.4 表单集与多重表单
2
3.1 面向对象的程序设计
对象(Object) 客观世界里的任何实体都可以被看作是对象。对象 可以是具体的物,也可以指某些概念。 从编程的角度来看,对象是一种将数据和操作过程 结合在一起的数据结构,或者是一种具有属性(数据) 和方法(过程和函数)的集合体。事实上程序中的对 象就是对客观世界中对象的一种抽象描述 (1)对象属性:属性用来表示对象的状态。 (2)对象方法:对象方法是描述对象行为的过程。
含义 列表框 微调 表格 图像 计时器 页框 ActiveX控件 ActiveX绑定型
5
类名 Line Shape Container Se含义 线条 形状 容器 分割符 超级链接 活动文档 (表格)列
类名 Control Page Form FormSet Header Custom ToolBar
4
类名 Label Text Box Edit Box Command Button Command Group Option Group Check Box Combo Box
含义 标签 文本框 编辑框 命令按钮 命令按钮组 选项按钮组 复选框 组合框
类名 List Box Spinner Grid Image Timer Page Frame ActiveX Control ActiveX Bou Control
31
3.向数据环境添加表或视图。在数据环境设计 器环境下,按下列方法向数据环境添加表或视 图: 在系统菜单中选择【数据环境】|【添加】命 令,或右键单击“数据环境设计器窗口”,然 后在弹出的快捷菜单中选择【添加】命令,打 开“添加表或视图”对话框,如图所示。如果 数据环境原来是空的,那么在打开数据环境设 计器时,该对话框就会自动出现。
第3章Access2010表
3.2.1 创建表的方法(续)
在Access窗口,打开某个Access 2010数据库。单击功 能区上的“创建”选项卡,可以看到在“表格”组中,有三个
按钮,用于创建表,如图3-3所示。
图3-3 “创建”选项卡中的“表格”组
3.2.2 使用数据表视图创建表
在数据表视图下创建表,是一种方便简单的方 式,能够迅速地构造一个较简单的数据表。
3.1.2 字段的数据类型(续)
11.计算字段 用于存放根据同一表中的其他字段计算而 来的结果值,字段大小为8个字节。可以使用表 达式生成器创建计算。 12.附件 将图像、电子表格文件、Word文档、图表 等文件附加到记录中,类似于在邮件中添加附 件。使用附件字段可将多个文件附加到一条记 录中。
3.1.3 学生管理系统数据库的表结构设计实例
图3-4
图3-6
例3-1 创建一个名为“学系”的表(续)
创建完表结构之后,可以直接在该视图下输入表的内容。
图3-10
Go 例3-3修改表结构
3.2.3 使用设计视图创建表
单击“创建”选项卡上的“表格”组中的“表设 计”按钮,显出表的设计视图。
表的“设计视图”分为上、下两部分。上半部分 是字段输入区,下半部分是字段属性区。 上半部分的字段输入区包括字段选定器、字段名称 列、数据类型列和说明列。 字段输入区的一行可用于定义一个字段。 字段选定器用于选定某个字段(行),如单击它 即可选定该字段行。 字段名称列用来对字段命名。数据类型列用来对 该字段指定数据类型。说明列用来对该字段进行必要 的说明描述,仅起注释作用,以提高可读性。 下半部分的字段属性区用于设置字段的属性。
3.1.2 字段的数据类型(续)
3.数字 数字字段用于保存需要进行数值计算的数据, 如:单价、工资、年龄等等。当把字段指定为数字 类型时,为了有效地处理不同类型的数值,通过 “字段大小”属性可以指定如下几种类型的数值: (1)字节——字段大小为1个字节,保存0~255之间 的整数。 (2)整型——字段大小为2个字节,保存 -32768~32767之间的整数。 (3)长整型——字段大小为4个字节,保存 -2,147,483,648 ~ 2,147,483,647的整数。
第3章数据库与表的创建及使用(修改)答案
一.选择题1.下列关于数据库、表和视图操作的叙述中,正确的是______A_______ 。
A. 关闭一个数据库,将自动关闭其所有已打开的数据库表B.打开一个数据库表,不能自动打开其所有对应的数据库C.关闭一个视图所对应的基表,将自动关闭该视图D.关闭一个视图,自动关闭其所对应的基表(在使用视图时,自动打开的本地基表并不随视图的关闭而自动关闭,必须单独关闭)2.有如下一段程序:CLOSE TABLES ALLUSE XSSELE 3USE JSUSE KC IN 0BROW上述程序执行后,浏览窗口中显示的表及当前工作区号分别是_____C________ 。
A.KC 、2B.KC 、3C.JS 、3D.JS 、23表(table)是存储数据的容器。
在下列有关VFP表的叙述中,错误的是_D___。
A.每个表最多只能包含200多个字段B.新建一个表后,一般会生成1~3个文件(.dbf,.fpt,.cdx)(如果表中有备注型字段或通用型字段,则自动产生与表名相同但扩展名为.fpt的备注文件,如果建立索引,则自动生成与文件名相同的结构复合索引文件。
)C.自由表与数据库表在数据存储功能上是相同的,但在数据管理与控制功能上有差别D.自由表添加到数据库中变成数据库表,而数据库表移出数据库则变成自由表**此题答案基本都正确,D选项考虑表移出数据库有可能被删除,所以勉强选D4.在VFP中,对于数据库表来说,如果将其移出数据库(变成自由表),则该表原设置或创建的__A__仍然有效。
A.候选索引B.长表名C.记录有效性规则D.触发器5.在创建表索引时,索引表达式可以包含表的一个或多个字段。
在下列字段类型中。
不能直接选作索引表达式的是_D____。
A.货币型B.日期时间型C.逻辑型D.备注型(不能基于备注型和通用型字段建立索引)6.表( table )是存储数据的容器.在下列有关 VFP 表的叙述中,错误的是 DA.系统默认的表文件扩展名为. dbfB.利用表设计器创建表结构时,系统默认的字符型字段宽度为 10C.自由表的索引功能与数据库表有区别D.表文件名在命名时只要遵循操作系统的规定 ,VFP 本身无任何新的限定(不可使用A-J中的单个字母作文件名,文件名及存取路径最好不使用空格)7. 数据库( database )是许多相关的数据库表及其关系等对象的集合.在下列有关 VFP 数据库的叙述中,错误的是BA.可用命令新建数据库B.从项目管理器中可以看出,数据库包含表、视图、查询、连接和存储过程(不包含查询)C.创建数据库表之间的永久性关系,一般是在数据库设计器中进行D.数据库表之间创建"一对多"永久性关系时,主表必须用主索引或候选索引8.在下列有关 VFP 表索引的叙述中,错误的是 cA.通过创建表的索引,不仅可以对记录数据进行排序,而且可以实现记录的筛选B.对于数据库表来说,可以创建 VFP 系统支持的所有类型的索引C.在表打开时,系统会自动地将默认的第一个索引作为主控索引(必须显式的指定,p99)D.表的唯一索引并不能控制字段数据输入时的重复9.数据库表可以设置字段有效性规则,字段有效性规则属于 DA.实体完整性范畴(字段的数据完整性和记录的数据完整性)B.参照完整性范畴(相关表数据的一致性)C.数据一致性范畴 D.域完整性范畴(域完整性指列的值域的完整性。
数据库和表的设计与操作.ppt
读者 性别
电话 号码
2021/3/11
8
5.确定关系
▪ 在每个独立的表中存储的数据之间有关系。
▪ 可以在这些表之间定义关系,而VFP可以利 用这些关系来查找数据库中有联系的信息。
• 例如,假设要给一名读者打电话,了解他的借阅 情况。
• 读者的电话号码记录在读者信息表中,借阅情况 记录在借阅信息表中,则只需告诉VFP要了解哪 些书的借阅情况,VFP就能根据两个表间的关系 查找到电话号码。
• 要建立这样的联系,就要把联系中“一方”的主关键字 字段添加到“多方”的表中。
• 这样可进一步修改图书馆管理数据库中借阅信息表和书 籍信息表的结构,如表3-7和表3-8所示。
表3-7 修改后的借阅信息表的结构
借 编号
读者 编号
书籍 编号
借书 日期
还书 日期
表3-8 修改后的书籍信息表的结构
书籍 编号
• 这是因为读者信息表的主关键字“读者编号”也 是借阅表的一个字段,称作“外部关键字”,因
为它是另外一个表(或称外部表)的主关键字。
2021/3/11
9
5.确定关系(续)
▪ 在VFP中,两表之间可以有4种可能的联系,即: 1:1、1:n、n:1和n:m,如1.1.2节所述。
▪ 1:n联系是关系型数据库中最普通的联系。
(2)防止删除异常。
▪ 将表3-1分解为表3-2、表3-3和表3-4。
读者 姓名
读者 性别
读者 单位
表3-1 借阅信息表的结构
家庭 读者 书籍 借出 住址 电话 名称 日期
作者 出版社 备注
还书 日期
表3-2 新借阅表的结构 借书日期 还书日期
2021/3/11
数据库基础与应用(Access 2010) 第3章 表的操作
3.2 表的创建
3.2.1 创建表的方法 在 Access 2010 中创建表的方法有 5 种:使用设 计视图创建表、使用数据表视图创建表、使用表 模板创建表、使用字段模板创建表和通过导入外 部数据创建表。 1 .使用设计视图创建表 使用设计视图创建表是一种比较常见的方建 的。
4 .“默认值”属性 默认值( Default )是在输入新记录时自动取定 的数据内容。在一个数据库中,往往会有一些字 段的数据内容相同或者包含有相同的部分,为减 少数据输入量,可以将出现较多的值作为该字段 的默认值。
3.1.2 字段的数据类型 1. 文本型 文本型 (Text) 字段可以保存字符数据,也可以是 不需要计算的数字。设置“字段大小”属性可以控 制文本型字段能输入的最大字符个数,最多为 255 个字符。如果取值的字符个数超过了 255 ,可使用 备注型。 注意:在 Access 中,每一个汉字和所有特殊字 符 ( 包括中文标点符号 ) 都算为一个字符。 在 Access 中,文本型常量要用英文单引号 (′) 或 英文双引号 (″) 括起来。
5. 使用导入外部数据的创建表 Access 数据库有多种方法实现与其他应用项目的 数据共享,既可以直接从某个外部数据源获取数据 来创建新表或追加到已有的表中,也可以将表或查 询中的数据输出到其他格式的文件中。前者叫做数 据的导入,后者叫做数据的导出。
1 )从外部数据源导入数据 由于导入的外部数据的类型不同,导入的操作步 骤也会有所不同,但基本步骤是类似的。 Excel 电 子表格软件是 Microsoft Office 软件包的组件之一, 它有方便的表格计算和数据处理功能。
2 .“输入掩码”属性 可以利用输入掩码( Input Mask )强制实现某种 输入模式,使数据的输入更方便。定义输入掩码时, 将格式中不变的符号定义为输入掩码的一部分,这 样在输入数据时,只需输入变化的值即可。 对于文本、数字、日期 / 时间、货币等数据类型的 字段,都可以定义输入掩码。 Access 为文本型和日 期 / 时间型字段提供了输入掩码的向导,而对于数字 和货币型字段只能使用字符直接定义“输入掩码” 属性。当然,文本和日期 / 时间型字段的输入掩码也 可以直接使用字符进行定义。
第3章 表的创建和使用
第三章表的创建和使用3.1 表结构1. 表的概念表(数据表):是指存放在磁盘文件中的一张二维表。
自由表:不属于任何数据库的表。
数据库表:包含在一个数据库中的表,只属于一个数据库。
表文件名:表名可以由字符、数字或下划线组成,但不可用A-J中的单个字母作文件名,系统自动给出的扩展名为.DBF。
备注文件名:当表中有备注型或通用型字段时,系统自动生成与所属数据表的表名相同、扩展名为:.FPT的文件名。
表结构:存储表记录的公共结构。
(就是指一张表的表头结构,即字段的属性)。
字段:表中的一列。
它规定了数据的特征。
记录:表中的一行。
它是多个字段的集合,同一张表的每个记录都有相同的字段。
关系型数据表的特点:(1)每一个字段不可再分解,也不能有名字相同的字段;(2)每一列中的数据都有相同的数据类型;(3)表中没有内容完全相同的行(记录)。
(4)表中任意两行或两列都可以任意交换。
2. 字段的基本属性字段的属性包括:字段名、数据类型、字段宽度、小数位数、空值支持◆字段名:即每个字段的名字,必须以字符开头,可由字符、数字、下划线组合而成,字母大、小写无区别,但其中不许有空格或其它字符。
自由表的字段名最多由10个字符组成,数据库表的字段名支持长名,最多可达128个字符。
如果从数据库中移去一个表,那么此表的长字段名将被截短成10 个字符。
VFP允许长字段名和长表名,但使用长名称对于跨平台的操作可能遇到难以预料的结果。
◆数据类型:指该字段的数据特征。
◆字段宽度:指该字段所能容纳数据的最大字节数。
◆小数位数:指数值型数据将保留几位小数。
此时的字段宽度= 整数位数+1+小数位数。
◆NULL 值(空值):用来指示记录中的一个字段有或没有数据的标识,NULL不是一种数据类型或一个值,NULL不等同于零或空格。
一个NULL 值不能认为比某个值(包括另一个NULL 值)大或小,相等或不同。
VFP 6.0表中字段的数据类型字段类型代号说明字段宽度使用示例字符型 C字母、汉字和数字型文本每个字符为1个字节,最多可有254 个字符学生的学号或姓名,"8199101" 或'李立'货币型Y 货币单位8 个字节工资,$1246.89日期型 D 包含有年、月和日8 个字节出生日期,的数据 {02/25/2000}日期时间型 T 包含有年、月、日、时、分、秒的数据 8 个字节 上班时间,{02/25/2000 9:15:15 AM}逻辑型 L“真”或“假”的布尔值 1 个字节课程是否为必修课,.T. 或 .F.数值型 N 整数或小数 在内存中占 8 个字节;在表中占 1 至20个字节 考试成绩, 83.5通用型 G OLE 对象 在表中占 4 个字节图片或声音备注型 M 不定长度的一段文字 在表中占 4 个字节学生简历3. 表结构的创建创建表结构其实就是设计字段的基本属性。
第3章 MySQL数据库和表PPT课件
数值类型
报错,原因是在四舍五入后,999.999变成1000.00,整数 位超过设定的(5-2)位
BIT类型
用于存放位字段值,BIT(M)可以用来存放多位二进制数,M范围从1~64,默认为1 位。对于位字段,直接使用SELECT将不会看到结果,可以用bin()(显示为二进制格式 )或者hex()(显示为十六进制格式)函数进行读取。 数据插入bit类型字段时,首先转换为二进制,如果位数允许,将成功插入,如果数据转 换后的位数大于实际定义的位数,则插入失败
数值类型
MySQL支持在类型名称后面的小括号内指定显示宽度。 例如int(5),表示当数值宽度小于5位的时候在数字前 面填满宽度,如果不显示指定宽度则默认为int(11)。 可以配合zerofill使用。 在数字位数不够的空间用“0”填满。
数值类型
数值类型
浮点数和定点数都可以用类型名称后加”(M,D)”的方式来 进行表示,”(M,D)”表示该值一共显示M位数字(整数位+ 小数位,不包括小数点),其中D位位于小数点后面。 浮点数后面跟”(M,D)”的用法是非标准用法。 float和double在不指定精度时,默认的整数位为10,默认的 小数位为0 例如:创建测试表t2,分别将id1,id2,id3字段设置为 float(5,2),double(5,2),decimal(5,2):
选项 ... 选项: [DEFAULT] CHARACTER SET 字符集名
| [DEFAULT] COLLATE 校对规则名 【例3.2】修改学生成绩数据库(xscj)默认字符集和校对规则。
3.1.3 删除数据库
已经创建的数据库需要删除,使用DROP DATABASE命令。 语法格式: DROP DATABASE [IF EXISTS] 数据库名 还可以使用IF EXISTS子句,避免删除不存在的数据库时出现MySQL错误信息。
vfp第3章(理论)数据库·表
二、数据表
⑹显示表记录 LIST|DISPLAY [<范围>] [[FIELDS]<字段名表>][FOR <条件>][OFF] <范围>:ALL、NEXT <n>、RECORD <n>、REST OFF:不显示记录号。 注意:省略范围和条件,LIST默认ALL,DISPLAY默 认当前记录。
二、数据表
⑾复制表结构 COPY STRUCTURE TO <数据表文件名> [FIELDS <字段名表>] ⑿复制表记录 COPY TO <数据表文件名> [FIELDS <字段名表>] [<范围>] [FOR <条件>] 注意:省略范围和条件,默认ALL。
二、数据表
⑸记录指针定位
首标记 首记录
当前记录 尾记录 尾标记
一个表被打开时,记录指针自动指向首记录。 ①直接定位 GO|GOTO <记录号>|TOP|BOTTOM ②相对定位 SKIP [<数值表达式>] 注意:SKIP 等价于 SKIP 1
二、数据表
⒁将表的当前记录复制到数组 SCATTER [FIELDS<字段名表>] TO <数组名> ⒂将数组中的数据复制到表的当前记录 GATHER FROM < ⒃向数据库中添加自由表 ADD TABLE <表名> ⒄从数据库中移去或删除表 REMOVE TABLE <表名> [DELETE]
二、数据表
⒀删除表记录 ①逻辑删除(添加删除标记) DELETE [范围] [FOR <条件>] 注意:省略范围和条件,默认当前记录。 ②恢复逻辑删除(去掉删除标记) RECALL [<范围>][FOR <条件>] 注意:省略范围和条件,默认当前记录。 ③彻底删除添加删除标记的记录 PACK ④彻底删除所有记录 ZAP
数据库表的设计和使用
3.如果匹配记录存在于相关表中,则不能删除主表中的记录。
3.3.2 创建表间关系
用户可以用多种方式来定义表之间的关系 在用户首次使用表向导创建表时,向导会给用户提 供创建表之间关系的机会; 另外用户也可以在设计视图中创建和修改表之间的 关系。
以项目为例,创建项目中4张表之间的关系。
3.4.3
导出数据表
以我们的项目为例,把“成绩表”导出。 在此我们要把“成绩表”导出成Microsoft Excel 3的表。
3.4.4
设置表的说明信息
数据库中拥有数百个表,为了区别各个表,可以为表 指定一个说明信息,来说明表的功能。 以我们项目为例,设置“课程信息表”的说明信息
如果要删除字段已经和其它表定义了关系,要先 删除关系。
3.4.2 复制数据表
在Access中复制数据库的表有几种方式: 复制结构 复制结构和数据 复制数据 以我们的项目为例,复制“成绩表”。
3.4.2 复制数据表
在Access中复制数据库的表有几种方式: 复制结构 复制结构和数据 复制数据
返回目录
3.4 管理数据表
3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.6 3.4.7 3.4.8 3.4.9 修改表的结构 复制数据表 导出数据表 设置表的说明信息 隐藏表 设置数据确认表达式 删除表 重命名表 关闭表
3.4.1 修改表的结构
3.4.5 隐藏表
大量的数据表给表的管理带来了非常大的困难, 有一些表具有特殊的用途,通常可以把它们隐藏 起来,这样减少了窗口中显示表的数量。 隐藏表的操作很简单,只需要在图3-48中把“属 性”的隐藏选项选中即可。
3.4.6 设置数据确认表达式
第三章 数据库设计精品PPT课件
数据库应用系统从开始规划、设计、实现、维护到最 后被新的系统取代而停止使用的整个期间。
数据库应用系统的生存周期图
•系统分析员和数据库设计员 •用户和数据库管理员 •应用开发人员
数据库设计各个阶段的设计描述
需求分析
任务:
详细调查现实世界要处理的对象(组织、部门、企业); 充分了解原系统(手工系统或计算机系统);明确用户的 各种需求;确定新系统的功能;充分考虑今后可能的扩充 和改变。
数据字典的内容(5个部分)
数据项,数据结构,数据流,数据存储,处理过程
• 处理过程具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要 描述处理过程的说明性信息。
• 处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据 流},处理:{简要说明}} 简要说明:主要说明该处理过程的功能及处理要求 功能:该处理过程用来做什么 处理要求:处理频度要求(如单位时间里处理多少事务,多少数据 量);响应时间要求等 处理要求是后面物理设计的输入及性能评价的标准
修改库存
F4 暂存订货单
P1.6 对照暂存
订货单
采购
到 货 通 知
经理
P1.8 编制销售、
F5 销售历史 F10 应收款明细帐
库存报表 第2层数据流程图之一(销售)
F4 暂存订货单 F6 待订货的配件
P2.1
按配件 汇总
P2.5
修改库存、 待订数量
P2.3
按供应商 汇总
订货单
供应商
F8 向供应商的订货单 P2.2
数据字典的内容(5个部分)
数据项,数据结构,数据流,数据存储,处理过程
• 数据存储数据结构停留或保存的地方,也是数据流的来源和去向之一。 • 数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数
第3章(17)教材配套课件
第3章 表
表3.2 Access 2010中的数据类型
第3章 表
3.2 创 建 表
完成表的设计后,接下来的工作就是创建表。创建表的 工作包括构造表中的字段、给字段命名、定义字段的数据类 型和设置字段的属性等内容。
Access创建表分为创建新的数据库和在现有的数据库中 创建表两种情况。在创建新数据库时,自动创建一个新表。 在现有的数据库中可以通过以下四种方式创建表:
息划分到基于主题的不同表中,信息的组合是使用表关系来 实现的。关系数据库中,通过建立主键和外键的配对提供了 连接相关表的基础。这些配对的字段既是某个表中的主键, 同时也是其他某个表的外键。
第3章 表
在关系数据库中,表和表之间的关系有三种: (1) 一对多关系:这是最普通的关系。对于表A的每一
个记录,表B中有几个记录(也可以是0)和它相关;反之,对 于表B的每一个记录,表A中至多有一个记录和它相关。
第3章 表
本书中主要介绍的示例数据库——教学管理数据库所涉 及到的表如表3.1所示
表3.1 教学管理数据库中的表
第3章 表
2. 表的结构 表由若干行和若干列组成。 (1) 字段:表中的列称为字段,它描述主题的某类特征。 (2) 值:行(记录)和列相交处存储的数据称为值。 (3) 主键:用于对存储在该表中的每个行进行唯一标识
(1) 直接插入一个空表。 (2) 使用设计视图创建表。 (3) 从其他数据源(如Excel工作簿、Word文档、文本文 件或其他数据库等多种类型的文件)导入或链接到表。 (4) 根据sharepoint列表创建表。
第3章 表
1. 在新数据库中创建新表 【例3.1】 创建一个“教学管理”数据库,同时建立“系
第3章 表
数据库设计层次3:构建表
数据库设计层次3:构建表源⾃:Stairway to Database Design Level 3: Building Tables作者Joe Celko,翻译:刘琼滨谢雪妮许雅莉赖慧芳译⽂:对于设计和创建数据库完全是个新⼿?没关系,Joe Celko,世界上读者数量最多的SQL作者之⼀,会告诉你这些基础。
和往常⼀样,即使是最专业的数据库⽼⼿,也会给他们带来惊喜。
Joe是DMBS杂志是多年来最受读者喜爱的作者。
他在美国、英国,北欧,南美及⾮洲传授SQL知识。
他在ANSI / ISO SQL标准委员会⼯作了10年,为SQL-89和SQL-92标准做出了杰出贡献。
有很多类型的表,每个表都有它们特定规则和完整性约束的要求。
⽆论需求是什么,表层级的约束会确保被执⾏,维护数据的完整性。
在表⾥,列只会出现⼀次。
这样做是有道理的;如果你两次记录某⼈的鞋⼦⼤⼩,这将是多余的,当列不⼀致时是混淆的。
现在我们可以有表层级的在每⾏的列⾥的检查(CHECK)约束。
这和之前列上的(CHECK)检查并没有啥区别。
它们可以在CREATE TABLE语句⾥,多个列声明⾥命名并出现,不附加到任何⾏。
例如:CONSTRAINT Valid_Employee_Age-- don't hire people before they arebornCHECK (emp_birth_date < emp_hire_date)⼀般不把检查组合成⼀个⼤的CHECK()⼦句,错误信息会包含约束名称,因此独⽴的约束相⽐单个复杂命名的约束,能让你更清楚的发现问题。
接下来是我们的冗余问题,在表层级我们想每个⾏因同个原因⽽唯⼀,这可以通过约束实现。
两个表层级的约束是UNIQUE和PRIMARY KEY,它们可以是单列或多列组合。
UNIQUE约束表⽰在表⾥,列或列的组合是唯⼀的。
但在列或多个列中有NULL,如果它是唯⼀值,我们还是允许的。
第3章 数据库与表
3. 2.1 表结构的设计
学号 姓名 性别 女 男 女 出生日期 10/21/85 02/14/86 05/07/85 团员否 T T T 入学成绩 502.00 489.50 467.00 班级名 计算计0101 电子0105 计算计0101 照片 简历
05011001 李平 05011002 章立新 05011003 赵智慧
第三章 数据库与表
本章重点和难点:
掌握如何建立、修改及删除数据库; 掌握如何建立和修改表; 掌握记录的添加、删除、修改、排序、索引、 查询等操作; 掌握多表间的关联操作;
主要内容
在关系数据库管理系统中,所有的操作都是 在表的基础上进行的。表在Visual FoxPro中分 为数据库表和自由表。本章主要介绍在Visual FoxPro环境下如何建立表,如何向表中输入数 据、浏览和修改表的结构、修改表中数据及建立 索引、多表间的关联等内容,最后介绍了有关数 据库表的相关操作。
3.1
数据库的操作
Visual FoxPro的数据库(Database)是一种关系型数据库 (RDBMS),是Visual FoxPro数据库管理系统的数据中心或数据 仓库,数据库包括表(Table)、视图(View)、“触发器”、“存储 过程”等内容。数据库的物理结构参见图3-1。
自由表1.DBF
3.1.2 关闭数据库
点击数据库设计器对话框窗口右上方的关闭按钮 ,即可关闭数据 库。也可以在命令窗口输入并执行关闭数据库的命令,格式如下: CLOSE DATABASES &关闭数据库文件 CLOSE ALL &关闭所有已经打开的文件 此外,使用命令创建、打开和关闭数据库 在命令窗口中使用命令创建、打开和关闭一个数据库的命令格式分别 为: CREATE DATABASE 数据库文件名 &&创建一个数据库 OPEN DATABASE 数据库文件名 &&打开已经创建的数据库 MODIFY DATABASE &&打开数据库设计器 CLOSE DATABASES &&关闭数据库
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
18
表的创建
Access提供了五种可视化方法创建表。分别是:
设计视图创建、数据表视图创建、表向导创建、 导入表创建、链接表创建。 在数据库窗口的表对象模式下单击“新建”按钮, 弹出“新建表”对话框,可选择创建表的方法, 如图所示。 另外,在数据库窗口的表对象模式下,右边表对 象列表窗口前三项对应于“设计视图”、“表向 导”、“数据表视图”三种创建表的方法,双击 就启动相应的创建过程。
第三章ACCESS 表
创建“表”
2
学习目标与要求
通过本章学习,应达到以下要求:
1.深入理解Access表结构的基本概念。 2.深入理解数据类型的意义,掌握Access提供的数据类 型的类别及适用对象。 3.深入了解掌握表的创建方法,可以用不同方法创建表, 并进行字段属性设置。 4.深入理解表之间关系的意义,掌握建立表之间关系的 操作方法,并应用关系实现数据之间的参照完整性。 5.理解并掌握表的各种视图,应用不同视图完成对表的 数据记录的输入和维护、表结构的修改以及对表中数 据的其他各种操作。
28
表的创建
2 ※ (2)定义表时有关数据约束的字段属性
实体完整性通过主键来实现,参照完整性通过建
立表的关系来实现,而用户定义的完整性约束,
是在表定义时,通过多种字段属性来实施,与之 相关的字段属性有“默认值”、“有效性规则”、 “有效性文本”、“必填字段”、“允许空字符 串”等。“索引”属性也有约束的功能。
#2008-8-8 20:8#。
15
表对象的结构与数据类型
是/否型。用于表达具有真或假的逻辑值,或者是
相对两个值。
作为逻辑值的常量,可以取的值有:true与false、
on与off、yes与no等。这几组值在存储时实际上
都只存一位。True、on、yes存储的值是-1,
false、off与no存储的值为0。
8
Access 提供了十种数据类型:
数据类型
用途 字母和数字 字母和数字 数值 日期/时间 数值 自动数字 是/否、真/假 链接或嵌入对象 Web地址、邮件地址 来自其他表或列表的值
字符长度 0 ~ 255 个字符 0 ~ 65536个字符 1、2、4或8字节 8字节 8字节 4字节 1位 可达1G 可达64000字节 通常为4字节
27
表的创建
Access将表中建立的索引保存在数据库文件中专门的位置。
一个表可以定义多个索引。 索引中保存每个索引的名称、索引字段项和各索引项对应 的记录编号。索引本身在保存时会按照索引项值升序 (Ascending)或降序(Descending)的顺序排列,但索 引并不改变表记录的存储顺序。 索引分为“有重复”和“无重复”索引。“无重复”索引 不允许建立索引的字段有重复值。 在Access中,可以为一个字段建立索引,也可以将多个字 段组合起来建立索引。 索引会降低表数据更新的速度。对于不需要的索引可以删 除。
“超链接”等类型字段,是否允许输人空字符串(″″)。 所谓空字符串是长度为0的字符串。
“允许空字符串”属性值是一个逻辑值,默认值为“否”。
31
表的创建
※ (3)“字段大小”属性
很多数据类型的存储空间大小固定,可以定义 “字段大
小”属性的数据类型,包括“文本”、“数字”或“自动 编号”类型。
10
表对象的结构与数据类型
文本型和备注型。文本型用来处理字符信息,可
以由任意字母、数字及其他字符组成。在表中定
义文本字段时,长度以字节为单位,最多255字节。
一个中文字符占2个字节。
备注型也是文本,主要用于在表中存储长度差别
大或者大段文字的字段。最长65536字符。
注 :一个汉字占两个字节,但算作一位。
⑥ 对表命名保存。
21
表的创建
例子:通过设计视图创建图书销售数据库中的
“图书”表。 启动图书销售数据库窗口。进入新建表的设计视 图。 根据事先完成的物理设计,依次在字段名称栏中 输入图书表的字段,选择合适的数据类型,并在 各字段的“字段属性”部分做进一步的设置。如 图所示。 在数据库窗口表对象窗口中直接双击“使用设计 器创建表”,同样启动表设计视图。
29
表的创建
默认值属性。除了“自动编号”和“0LE对象”类
型以外,其他类型的字段都可以在定义表时定义 一个默认值。有些类型自动有一个默认值,如 “数字”和“货币”型字段“默认值”属性设置 为0,“文本”和“备注”型字段设置为Null (空)。 使用默认值可提高输入数据的速度,减少操作的 错误,提高数据的完整性与正确性。 必填字段属性。规定字段中是否允许有Null值。 “必填字段”属性值是一个逻辑值,默认值为 “否”。
26
表的创建
主键也是一种数据约束。主键实现了数据库中实
体完整性功能,也是参照完整性中被参照的对象。 定义一个主键,也就是在主键字段上自动建立了 一个“无重复”索引。 索引是一个字段属性。给字段定义索引有两个基 本作用: ① 利用索引可以实现一些特定的功能,如主键就是 一个索引; ② 建立索引可以明显提高查询效率,更快的处理数 据。
3
表与关系
表对象的结构 与数据类型
表的创建
表与关系
表之间的关系
表的操作
4
第一节 表的结构与数据类型
1
表的结构
表(Table)对象是数据库中最基本和最重要的对象,
是其他对象的基础。Access基于关系模型,表对应 于关系模型中的关系。 表是数据库中唯一组织数据存储的对象。数据库建 立后,紧接着就应该建立各个表对象。 一个数据库内可有若干个表,每个表都有唯一的表 名。表是满足一定要求的由行和列组成的二维表, 表中行称为记录(Record),列称为字段(Field)。
20
表的创建
1 设计视图创建表
使用设计视图创建表是最主要的方法之一。步骤:
① 打开数据库窗口,选择“表”对象标签。
② 单击“新建”按钮,弹出“新建表”对话框。 ③ 选择“设计视图”,单击“确定”按钮,启动表设计 视图。 ④ 定义各字段的名称、数据类型,设置字段属性等。
⑤ 定义主键、索引,设置表的属性。
货币型。货币型数据是数值,由0~9、小数点、
正负号等组成,不能有除E以外的其他字符。
货币型用于表达货币。
14
表对象的结构与数据类型
日期/时间型。可以同时表达日期和时间,也可以
单独表示日期或时间数据。
日期、时间或日期时间的常量表示要用“#”作为
标识符。如2008年8月8日晚上8点8分0秒表示为:
17
第二节 表的创建
使用表对象管理数据的基本步骤包括:定义表对
象;输入数据记录。 第一是定义表对象。包括表的所有字段,要指定 各字段的名称、数据类型,以及字段属性细节, 确定各字段是否有有效性约束。指定表的主键、 索引等。然后给表命名保存。如果新定义的表和 其他表之间有关系,还要建立表之间的关系。 第二给表输入数据记录。数据必须满足所有对于 表的约束。
满足参照完整性要求
6Leabharlann 7表的结构与数据类型
2
数据类型(P33)
数据类型是数据处理的重要概念。DBMS事先将
所有数据进行分类,不同DBMS在数据类型的规 定上各有不同。 数据类型规定了每一类数据的取值范围、表达 方式和运算种类。 每个数据都应该有明确的数据类型。因此,定 义表时每个字段都要指出其类型。有一些数据, 可以定义不同的类型,这样的数据到底应该指 定为哪种类型,要根据它自身的用途和特点来 确定。
(4)长整型:系统默认值,(2的32次方)占4个字节;
(5)单精度型:保留7位小数,占4个字节;
(6)双精度型:保留15位小数,占8个字节;
(7)同步复制:系统自动为字段设置值,占16个字节。
13
表对象的结构与数据类型
自动编号型。数字型的一种,用于在表中自动生
成顺序或随机序号。
22
学生名单
“
23
例
学生名单
“
24
表的创建
设计视图分为上下两部分。上部分定义字段名、数据类型,
并对字段进行说明。下部用来对各字段属性进行详细设置, 不同数据类型的字段属性有一些差异。下部的“字段属性” 部分有两个选项卡:“常规”和“查阅”。 “常规”选项卡用于设置属性。对于每个字段的“字段属 性”,由于数据类型不同,需要设置的属性也有差别,有 些属性每类字段都有,有些属性只针对特定的字段。 “查阅”选项卡是只应用于“文本”、“数字”、“是/ 否”三种数据类型的辅助工具,用来定义当有“查阅向导” 时作为提示的控件类别。
※ (4) “格式”属性
当用户打开表,就可以查看整个表的数据记录。每个字段
的数据都有一个显示的格式,这个格式是默认格式。用户 可以设置“格式”属性重新定义字段数据的显示和打印格 式。Access有丰富的格式。设置“格式”属性只影响数据 的显示而不影响数据的输入和存储。
32
表的创建
※ (5)“输入掩码”属性
5
第一节 表的结构与数据类型
表中所有记录具有相同字段结构,每一列字段具有
唯一的取值集合,即数据类型。
一般来说,表的每个记录不重复。可指定主键
(Primary Key)作为区分各记录的标识,主键是一 个或者多个字段的组合。
一个数据库中多个表之间常常互相联系。一个表的
主键在另外一个表中作为将两个表关联起来的字段, 称为外键(Foreign Key)。外键与主键之间,必须
文本 备注 数字 日期/时间 货币 自动编号 是/否 OLE对象 超链接 查阅向导
9
第一节 表对象的结构与数据类型