如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第四章数据库的创建和使用几点说明4.1VFP数据库4.2数据库的设计过程一、确定建立数据库的目的明确数据库中应保存哪些信息充分了解用户的需求,明确数据库的目的确定各主题二、确定需要的表三、确定表的字段每个字段直接和表的主题相关;不要包含推导得到或需计算的数据字段(年龄,出生日期)收集所需的全部信息(不要太多)以最小的逻辑单位存储信息(原子)每个表都必须包含主关键字(学号、课程代号)四、确定表之间的关系1.关系的种类(1)一对多关系(主表、子表)例:学生表与成绩表(2)多对多关系(纽带表)例:学生表与课程表(3)一对一关系(不常用)2.分析并确定表之间关系五、设计求精4.3建立数据库文件二、数据库的组成(2)在数据库中添加、新建和移去表添加表:自由表数据库表(建立库与表之间的双向链接)新建数据库表移去(不同于删除)表:数据库表自由表(删除库与表之间的双向链接)(3)命令方式OPENDATABASE<数据库名>ADDTABLE<自由表表文件名>[NAME长表名]注:使用新建表的方法所创建的表,都属于该数据库REMOVETABLE表名[DELETE]注意:一张表在同一时间内只能属于一个数据库2.视图(VIEW)把分散在相关表中的数据通过联接条件把它们收集到一起。构成一个“虚表”。这个“虚表”就是视图。可以用来从一个或多个相关联的表中提取有用信息;与表相类似的地方是,可以用来更新其中的信息,并将更新结果永久保存在磁盘上。3.存储过程数据库中的数据经常要进行一些相似或相同的处理对于这些处理,可以编写成自定义函数或过程,并保存到存储过程.4.4数据字典4.5数据库表字段的扩展属性一、字段的显示属性1、字段的格式格式:确定一个字段在表单、浏览窗口或报表中的显示格式输入所需的格式码格式实际上是字段的输出掩码常用的格式码:A(只允许字母字符)T(删除输入字符前导和结尾空格)!(把字母字符转换为大写字符)2、输入掩码输入掩码:可以确定字段输入的格式屏蔽非法输入,减少人为的数据输入错误常用的输入掩码:X(可输入任何字符)A(只允许字母)9(可输入数字和正负号)例如3、设置字段标题系统默认,字段的标题显示的是字段名。(字段名的最大长度只有10个字符长)二、字段验证规则例子:createtablestu(student_idc(10),sexc(2)checksex=“男”orsex=“女”)Altertablestualtersexsetchecksex=“男”orsex=“女”2.默认值作用:添加记录时,字段所具有的最初的值系统自动的默认值;亦可将之置为.NULL.可减少用户的输入工作量当添加新记录时,可确保验证规则生效之前,先用默认值来填充。创建字段默认值表设计器——“字段属性”CREATETABLE——DEFAULT子句ALTERTABLE——SETDEFAULT子句例子:createtableteacher(teacher_idc(10)default"0000",namec(10))altertable教师表altercolumnteacher_idsetdefault"0000"4.6数据库表的表属性一、长表名打开数据库表长表名:表所属数据库必须打开并且是当前数据库,否则将不能成功打开。表文件名:如果所属数据库未打开,将会自动打开数据库。(演示)js表的长表名为教师use教师------要求打开所属数据库usejs--------不需要二、表记录的有效性规则1、表设计器规则文本框:设置有效性规则信息文本框:指定出错提示信息,当校验与规则不符,显示此信息教师表设置记录级规则:例1:教师的工龄(gl)小于(教师的年龄-15)gl<year(date())-year(csrq)-15例2:教授工资要大于1500,其它职称教师工资要小于1500IIF(TITLE=“教授”,WAGE>1500,WAGE<1500)2、命令方式createtablejs()checkgl<year(date())-year(csrq)-15altertablejs()setcheckgl<year(date())-year(csrq)-15三、表的触发器3.创建表的触发器:表设计器——“表”选项卡命令CREATETRIGGERON表名;FORAS逻辑表达式4.移去或删除触发器:操作方法表设计器——“表”选项卡命令DELETETRIGGERON表名FOR;DELETE|INSERT|UPDATE四、约束机制及其激活时机约束机制4.7表之间的关系关系类型:一对多关系(1:M)多对多关系(M:N)