1 / 330

数据库与数据表操作

数据库与数据表操作. 设计数据库 建立数据库与数据表 数据库表的基本操作 数据库的基本操作 索引的建立及使用 多表的使用 永久联系及参照完整性. 3.1 设计数据库. 确定数据库中所需的表. 确定表的主关键字. 确定数据表的结构. 确定表之间的关系. 设计数据库. 了解用户需求. 3.1.1 了解用户需求. 了解用户的需求及目的,是开发数据库应用系统的第一个且最重要的步骤。我们常说需求分析往往决定了一个应用系统的成败。

Download Presentation

数据库与数据表操作

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 数据库与数据表操作 • 设计数据库 • 建立数据库与数据表 • 数据库表的基本操作 • 数据库的基本操作 • 索引的建立及使用 • 多表的使用 • 永久联系及参照完整性

  2. 3.1 设计数据库

  3. 确定数据库中所需的表 确定表的主关键字 确定数据表的结构 确定表之间的关系 设计数据库 了解用户需求

  4. 3.1.1 了解用户需求 • 了解用户的需求及目的,是开发数据库应用系统的第一个且最重要的步骤。我们常说需求分析往往决定了一个应用系统的成败。 • 在此阶段,开发人员要与应用系统的使用者进行交流,搜集人工操作报表,了解现行工作的处理过程。从而决定该系统输入数据的格式,应该解决的问题,需要获得的统计分析信息和报表的种类。

  5. 图书管理系统用户需求 某单位的小型图书馆有藏书数万册,为该单位的教职工和研究生进行图书借阅业务。该要求有以下功能: • 对于读者信息和书籍数据都要有新增、删除、修改、查询的功能。 • 需要根据各种条件查询图书的信息。 • 需要将每本图书的简介和封面图片保存在系统中。

  6. 图书管理系统用户需求 进行借书和还书的管理,借书时应遵循以下规则: • 书籍有精装、平装、线装三种类别,其中线装书不允许借阅。 • 对于研究生读者,可借书5本;对于教研人员和工作人员读者,可借书10本。 • 读者借书的期限为31天。

  7. 图书管理系统用户需求 需要打印的报表:借书证

  8. 图书管理系统用户需求 需要打印的报表:图书目录册

  9. 图书管理系统用户需求 需要打印的报表:逾期图书统计表

  10. 图书管理系统用户需求 • 该系统需要以下各数据项(字段): 读者证号、姓名、性别、身份、电话号码、 条形码、书名、分类号、作者、出版社、出版年月、售价、典藏类别、典藏时间、在库、币种、捐赠人、简介、封面、 借书日期、还书日期。 注意:对于能够根据已有信息计算出来的数据,不应定义为数据项。例如,“逾期图书统计”中的“逾期天数”

  11. 3.1.2 确定数据库中所需的表 若将所有的数据项放在一个数据表中,就会产生数据冗余。

  12. 确定数据库中所需的表 在设计数据库时,应将数据项划分为多个表,每个数据表只包含一个主题的信息。

  13. 确定数据库中所需的表

  14. 3.1.3 设计表的结构 对于每一个数据表,要设计表结构,即数据表包括哪些字段,各字段的名称、数据类型、字段宽度和小数位数等信息。

  15. 确定数据表的字段 • 在确定所需字段时,应注意将与表的主题相关的字段存放在一个数据表中。 • 综合以上分析,各数据表的字段如下: • 读者表(读者证号、姓名、性别、身份、电话号码) • 图书表(条形码、书名、分类号、作者、出版社、出版年月、售价、典藏类别、典藏时间、状态、币种、捐赠人、简介、封面) • 借阅表(读者证号、条形码、借书日期、还书日期) 注意:在设计数据表时,应尽量避免在各个表之间出现重复的字段。

  16. 定义字段名称 • 数据库表字段名称最长可达128个字母,自由表字段名称最长可达10个字母。 • 字段名称可包含中文、字母、数字与下划线,但第一个字母不能是数字与下划线。 • 在同一个表中,各个字段的名称绝对不能重复。 通常,用户定义的字段名称与该字段所存储的数据项有关,如书名、sm、bookname均可作为描述书籍名称的字段名。

  17. 定义字段数据类型 • 字段的数据类型决定了该字段所储存数据的特性。 • VFP共提供了13种数据类型。

  18. 定义字段数据类型 • 字符型(C) 用来存储所有能打印的ASCII码字符和汉字,最多可存储254个字符。 • 像名称、地址、职称等字段,定义为字符型 • 像学号和电话号码这类字段,字段值由数字组成,但不需进行数学计算,也定义为字符型。

  19. 定义字段数据类型 • 数值型(N) 用来存储可参与加减乘除数学运算的整数或小数。 • 像价格、工资、成绩等字段,通常定义为数值型。 • 数据范围-9999999999E+19~0.9999999999E+20 • 浮点型的使用规则与数值型完全相同。

  20. 定义字段数据类型 • 货币型(Y) 用来存储一些表示货币量的数据。 • 由于小数位数固定为4位,如果输入货币型字段的数值的小数位超过四位,VFP将自动进行四舍五入。 • 数据范围-922337203685477.5807~922337203685477.5807

  21. 定义字段数据类型 • 整数型(I) 如果用户要存储的数值不需保留小数,并且在整型的数据范围之内,应采用整数型。 • 由于整数型字段是以4位的二进制值存储,所以它比其他的数值型字段要求较少的内存空间,并且处理速度也较快。 • 数据范围-2147483647~2147483647

  22. 定义字段数据类型 • 双精度型(B) 如果用户要存储的数值很大,或需要极高的精确度,则应选择双精度型。 数据范围+/-4.94065645841247E-324~+/-1.79769313486232E308

  23. 定义字段数据类型 • 日期型(D) 用来存储日期数据。 • 像出生日期、出版日期、借阅日期等字段,通常定义为日期型。 • 日期字段的默认格式为MM/DD/YY,在输入日期型数据时,VFP会检查其合法性。 • 可用 SET DATE TO 和SET CENTURY ON命令来改变日期格式。

  24. 定义字段数据类型 • 日期时间型(T) 通常用来存储仅包含时间或日期与时间都包含的数据。 • 像员工上下班的打卡时间,可以用日期时间型字段来存储。

  25. 定义字段数据类型 • 逻辑型(L) 逻辑型字段只能存放逻辑真值.T.或逻辑假值.F.。 • 当要存储的数据只能是两种状况之一时,例如图书是否在库,已婚或未婚等,适合采用逻辑型字段。

  26. 定义字段数据类型 • 备注型(M) 用来存储大量的文字信息。 • 由于字符型字段只能容纳254个字符,当字段需要存放较多的文本字符,如“经历”、“简介”等字段,定义为备注型。 • 一个表文件中如果包含备注字段,则系统将自动建立一个与表文件同名、扩展名为FPT的备注型文件,用来存放备注型字段所有内容。 • 备注型字段的长定固度为4字节,仅存放一个指针,指向该字段值在备注文件的地址。 • 备注型字段除了能进行编辑、显示和打印外,不能进行其他操作。

  27. 定义字段数据类型 • 通用型(G) 用来存储各种链接和嵌入OLE对象:图片、声音、音频、视频、office文档等。 • “照片”、word文档等字段应定义为通用型。 • 通用数据型字段仅存放指针,字段的内容存储在备注文件中。

  28. 定义字段数据类型 • 二进制字符型 与字符型相似,但其数据不会随代码页的改变而改变。 • 二进制备注型 与备注型相似,但其数据不会随代码页的改变而改变。

  29. 字段的宽度和小数位数 • 字段宽度 指字段中所能容纳的最大数据量。 • 对于字符型字段,字段宽度是指其所能输入的文本长度。其中,一个汉字所占宽度为2。 • 例如:读者表的姓名字段,最多要容纳4个汉字,应设置其宽度为8。

  30. 字段的宽度和小数位数 • 对于数值型与浮动型字段,字段宽度指其可能的最大位数(包括小数点和符号位) • 例如,若某数值型字段最小可能为-999999.99,应定义其字段宽度为1(负号)+6(整数最大位数)+1(小数点)+2(小数位数),即10。

  31. 字段的宽度和小数位数 有些数据类型的宽度是固定的: • 日期型,日期时间型,货币值类型,双精度型宽度固定为8; • 整数型宽度固定为4; • 逻辑型宽度固定为1; • 备注型与通用型宽度固定为4。

  32. 字段的宽度和小数位数 对于数值型、浮点型和双精度型字段,根据该字段需要的数据精度,设置小数位数。 • 例如图书表的售价字段,要求精确到角,设置其小数位数为1。由于图书价格最多不超过1万,该字段宽度为6。

  33. 读者表的结构

  34. 借阅表的结构

  35. 图书表的结构

  36. 图书表的结构

  37. 3.1.4 确定表的主关键字 • 每个数据表必须有一个主关键字来唯一标识每一条记录。 • 例如,条形码字段能标识图书的唯一性,读者证号字段能标识读者的唯一性,是表的主关键字。

  38. 3.1.5 确定表之间的关系 • 用户在进行数据处理或查询时,需要用到的数据项可能存放在不同的数据表中。 • 根据表之间的关联将各个表的信息联系在一起。 • 图书表和借阅表通过公共字段“条形码”有着一对多的关联。 • 借阅表和读者表通过公共字段“读者证号”有着一对多的关联。

  39. 3.2 建立数据库与数据表

  40. 数据表的概念 • 数据表是一个由表结构和数据记录组成的二维表。 • 在建立数据表时,首先要创建表结构,即定义表中有哪些字段,每个字段的名称、数据类型、字段宽度和小数位数;然后再输入数据记录。

  41. 数据表的概念 • 数据表文件的扩展名为dbf。 • 若数据表中有备注型或通用型字段,还将产生一个扩展名为ftp的备注文件。

  42. 数据库的概念 • 数据库用来组织和管理相互联系的多个数据表及相关的数据库对象(包括视图、连接定义、存储过程)。 • 数据库中还包括数据字典的信息:即各个字段的标题、有效性规则、默认值等信息,各个数据表之间的关联及参照完整性信息。

  43. 数据库的概念 注意:数据表分为数据库表(隶属于一个数据库)和自由表(不属于任何数据库)。不管是哪种数据表,数据记录都是存放在dbf表文件中,而不是存放在数据库文件中。

  44. 3.2.1 建立数据库

  45. 在项目管理器中建立数据库

  46. 选择数据库所保存在磁盘上的位置 输入数据库的名称 保存数据库

  47. 数据库设计器

  48. 在项目管理器中建立数据库 注意:建立数据库后,系统在指定文件夹下创建了三个主文件名相同,扩展名不同的文件:.DBC为数据库文件,.DCT为数据库的相关备注文件,.DCX为数据库相关的索引文件。若要将数据库复制到其他地方,务必将三个文件一起复制,否则会出错。

  49. 文件(F) 新建(N) 通过新建对话框建立数据库

  50. 使用CREATE DATACASE命令建立数据库 CREATE DATABASE[<数据库名>|?] • 在命令中指定数据库名,则直接建立数据库。 • 如果未指定数据库名或使用问号,系统将打开“创建” 对话框,要求用户指定数据库名称和存储路径。 • 使用命令建立数据库后,只是将数据库打开。执行MODIFY DATABASE命令才打开数据库设计器。

More Related