版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章数据库的基本操作第三章数据库的基本操作1第三章主要内容3.1建立项目管理器3.2数据库设计方法3.3数据库的建立与维护3.4建立数据表3.5记录基本处理方法3.6数组与表的字段之间的相互数据传递第三章主要内容3.1建立项目管理器3.2数据库设计方法323.1.1项目管理器什么项目?—所谓项目是指文件、数据、文档和对象的集合。(起总管作用)项目管理器—是VF中处理数据和对象的主要工具,它为系统开发者提供了极为便利的工作平台:一是提供了简便的、可视化的方法来组织和处理表、数据库、表单、报表、查询和其他一切文件,通过单击鼠标就能实现对文件的创建、修改、删除等操作;二是在项目管理器中可以将应用系统编译成一个扩展名为.app或.exe的可执行文件。3.1.1项目管理器什么项目?3项目管理器的创建方法项目文件的后缀名为.PJX方法一:利用菜单创建项目Gxglxt(高校管理系统)步骤:“文件”菜单“新建”命令或者“常用”工具栏”新建按钮”打开”新建”对话框“文件类型”区域选择”项目”单选项,单击“新建文件”按钮,打开“新建”对话框在“项目文件”中输入项目名称“Gxglxt”单击保存注意:当激活“项目管理器”窗口时,在菜单栏中显示“项目”菜单,对于已经创建的项目文件,以后再打开时会自动打开项目管理器项目管理器的创建方法项目文件的后缀名为.PJX4方法二:用命令创建项目管理器命令格式:createproject<项目文件名|?>参数解释:<项目文件名>用于指定项目的文件名。如果没有为文件指定扩展名,则VF自动指定.PJX为扩展名<?>意思是打开“创建”对话框,提示为正在创建的项目文件命名。项目管理器的创建方法方法二:用命令创建项目管理器项目管理器的创建方法5项目管理器界面项目管理器界面6打开和关闭项目打开步骤:“文件”菜单”打开”,常用工具栏“打开”按钮在“打开”对话框中选择要打开的文件双击打开或者选中文件点击“确定”命令方式:Modifyproject<项目文件名|?>关闭(closeall)关闭空项目会让你选择是否删除空项目打开和关闭项目打开步骤:7各类文件选项卡使用项目管理器创建文件添加文件修改文件移去文件定制项目管理器移动、缩放和折叠拆分项目管理器停放项目管理器各类文件选项卡83.2数据库设计方法(教材P44)设计原则:关系数据库的设计应遵循概念单一化“一事一地”的原则避免表之间出现重复字段表中的字段必须是原始数据和基本数据元素用外部关键字保证有关联的表之间的联系3.2数据库设计方法(教材P44)设计原则:93.2.1数据库设计步骤数据库设计步骤:第一步:确定数建立据库的目的,这有助于确定需要VFP保存哪些信息第二步:确定需要的表第三步:确定所需要的字段第四步:确定关系第五步:设计求精。对设计进一步分析,查找其中的错误。创建表时,在表中加入几个示例记录,看能否从表中得到所想要的结果。3.2.1数据库设计步骤103.3数据库的建立与维护3.3.1建立数据库.bdc(数据库文件).dct(数据库备注文件).dcx(索引文件)在VisualFoxPro中,可以采用三种方式创建一个数据库。1.使用“项目管理器”创建数据库2.使用“文件”菜单中的“新建”命令创建数据库3.使用CREATEDATABASE命令创建数据库3.3数据库的建立与维护3.3.1建立数据库111.使用“项目管理器”创建数据库打开项目管理器
数据选项卡
数据库
新建
新建数据库
输入数据库名
保存
打开数据库设计器。2.使用“文件”菜单中的“新建”命令创建数据库工具栏中的‘新建’
文件类型中的‘数据库’
新建文件按钮
输入数据库名
保存
打开数据库设计器1.使用“项目管理器”创建数据库123.使用命令交互建立数据库命令格式CREATEDATABASE[DatabaseName|?]命令功能该命令用于在命令窗口或程序中直接创建一个数据库。命令说明(1)DatabaseName参数用于指定要创建的数据库名称。(2)?参数用于在执行该命令时打开“创建”对话框以输入要创建的数据库名称。3.使用命令交互建立数据库命令格式13常用打开数据库的方式有三种:1、在项目管理器中打开数据库2、通过‘打开’对话框打开数据库3、使用命令打开数据库常用打开数据库的方式有三种:14使用命令方式打开数据库命令格式OPENDATABASE[FileName|?][EXCLUSIVE][SHARED][NOUPDATE][VALIDATE]命令功能该命令用于在命令窗口或程序中直接打开指定的数据库。命令说明(1)FileName参数用于指定要打开的数据库名称。(2)?参数用于在执行该命令时弹出“打开”对话框以指定要打开的数据库名称。使用命令方式打开数据库命令格式15(3)EXCLUSIVE:以独占方式打开数据库(4)SHARED:以共享方式打开数据库(5)NOUPDATE:以只读方式打开数据库(6)VALIDATE:指定VF检查在数据库中引用的对象是否合法注:当打开一个数据库时,不会同时打开数据库中的表,须使用USE命令打开表文件打开一个表不一定要打开数据库,这是VF不完善的地方同一时刻以打开多个数据库,但只有一个当前数据库,可对当前数据库进行设定(3)EXCLUSIVE:以独占方式打开数据库16修改数据库在VFP中修改数据库实际上是打开数据库设计器,用户可以在数据库设计器中完成各种数据库对象的建立,修改和删除等操作。可以用三种方式打开数据库设计器1、从项目管理器中打开数据库设计器2、从‘打开’对话框中打开数据库设计器3、使用命令打开数据库设计器修改数据库在VFP中修改数据库实际上是打开数据库设计器,用户17使用命令打开数据库设计器格式:MODIFYDATABASE[DatabaseName/?][NOWAIT][NOEDIT]功能:打开数据库设计器[NOWAIT]:在程序中有效。即打开数据库设计器后继续运行程序。[NOEDIT]:只是打开数据库设计器,而禁止对数据库进行修改。使用命令打开数据库设计器格式:18删除数据库从项目管理器中选择要删除的数据库,然后单击‘移去’按钮。注意:不管是移去还是删除,都没有删除数据库中的表文件。若要删除删除数据库的同时删除数据库所包含的表,需要使用命令方式。
DEIETEDATABASEDatabasename|?[DELETETABLES][RECYCLE]选择[DELETETABLES]表示删除其中的表文件。选择[RECYCLE]表示把删除的库文件和表文件放到回收站。删除数据库从项目管理器中选择要删除的数据库,然后单击‘移去19将表添加到数据库 要将一个或多个表加入到数据库中时,可以在“项目管理器”中选择“数据”选项卡,再从列表中选择“数据库”项下的“表”,最后选择【添加】按钮要添加的表必须具备下列条件:该表是一个有效的.dbf文件;不允许与打开的数据库中已有的表同名表不能同时放在另一个数据库中要加入表的数据库必须具备下列条件:必须以独占方式打开。不包含在事务中将表添加到数据库 要将一个或多个表加入到数据库中时,可以在“203.4建立数据表1在数据库中建立表 在数据库中建立表最简单和直接的方法是使用数据库设计器。 建立并打开数据库设计器,在其空白处单击鼠标右键弹出‘数据库’快捷菜单,从中选择‘新建表’。3.4建立数据表1在数据库中建立表21字段名:字段的命名规则自由表字段名最长为10个字符。数据库表字段名最长为128个字符。字段名必须以字母或汉字开头。字段名可以由字母、汉字、数字和下划线组成。字段名中不能包含空格。字段名:字段的命名规则22字段类型:
字符型当字段存储内容为由字母、数字、特殊符号以及标点组成的字符串时,可将字段设置为字符型。字符型字段存储的字符长度最多可达254个字符,可以保存储如姓名、地址、籍贯以及无需计算的数字(如邮政编码、电话号码)等文本信息。字段类型:
字符型23货币型 用于保存货币类型的数值。它占用8个字节。日期型 日期型字段用于保存不带时间的日期值,包含年、月、日三项,取值范围从公元零年1月1日至公元9999年12月31日。货币型24日期时间型 与日期型字段不同的是,日期时间型字段除了包含有年、月、日外,还包含了时、分、秒。日期时间值存储在两个四字节整数的8个字节中,第一个四字节的整数保存日期,剩下的四字节整数保存时间。时间的最小计时单位为百分之一秒。逻辑型 当字段内容只能选取两种值时,可以采用逻辑型,它只含有两个值:真(.T.)和假(.F.)。日期时间型25数值型 数值型用于表示整数或小数,它的长度在表中最长可达20位,它的表示范围并不确定。例如,当定义数值长度为8,其中小数位为4时,它所表示的最大值为999.9999。小数点要占一位。双精度型 当所存储的数值精度要求很高或要求采用浮点数时,采用双精度型。它所表示的数值范围要比数值型的范围精确一些,最多可精确到小数点后7位。数值型26浮动型 浮动型在功能上等价于数值型,其长度在表中最长可达20位。整型 当对表的存储空间和性能要求严格时,可以使用整型字段保存整数信息。整型字段占用4个字节的空间,并且在表中以二进制存储。因此比其他数据类型占用的内存更少,而且计算的速度也要快一些。它的数值范围从-2147483648至2147483647。浮动型27通用型 通用型字段用于存储电子表格、文档、图片等OLE信息,通用字段大小取决于OLE对象的大小以及OLE对象是以嵌入方式还是链接方式存入该字段。如果是嵌入方式,它所占用的空间要大一些。一般来说,通用型字段的实际存储空间只受磁盘空间的限制,可以很大。但通用型字段在表中仅占4个字节。备注型 备注型用于存储长度难于确定的数据块,它在表中占用4个字节。备注型不同于其他数据类型,它所保存的数据信息是存储在单独的文件中。通用型28字符型(二进制)与字符型用法相同,它可以包括任意不经过代码页修改的字符数据。如某种二进制代码字符或其他语言代码等。代码页是供计算机正确解释并显示数据的字符集。通常不同的代码页对应不同的平台或语言。备注型(二进制)与备注型用法相同,它可以包括任意不经过代码页修改的备注型字段数据。字符型(二进制)29空值: 在定义表的字段时,可以把‘NULL’选项选中,表示此字段可以为空值。 空值表示尚未储存数据的字段,不同于空白字符串和‘0’值。 作为关键字的字段是不允许为空值的。空值: 在定义表的字段时,可以把‘NULL’选项选中,表示30字段有效性: 在“字段有效性”字段属性组中,包含有三个字段属性,分别是:“规则”:指定实施数据字段级有效性检查的规则。这是字段避免输入错误内容的一个重要措施。“信息”:指定当输入违反字段级有效性规则时,显示的错误信息。“默认值”:是指字段在没有输入数据的情况下,系统给定的值。字段有效性: 在“字段有效性”字段属性组中,包含有三个字段31显示组框: 在“显示”字段属性组中,包含有三个字段属性,分别是: “格式”:指定字段在浏览窗口、表单和报表中显示数据的格式,例如:是否将英文字母大写或小写、是否添加货币符号等等。格式控制符说明A只能输入字母D使用系统设定的日期格式L显示数字的前导零T禁止在字符串前后输入空格!将小写字母转换为大写显示组框: 在“显示”字段属性组中,包含有三个字段属性,分32“输入掩码”:指定字段输入数据的格式。例如,电话号码的格式为:(999)9999-9999。其中9表示数字。输入掩码控制符说明X允许输入任何字符9允许输入数字和正负符号#允许输入数字、空格和正负符号$显示当前货币符号。由SETCURRENCY命令指定$$显示的货币符号与数值连在一起*在数值的左侧填充“*”号.小数点,千位分隔符“输入掩码”:指定字段输入数据的格式。例如,电话号码的33“标题”:在浏览窗口、表单和报表中,利用“标题”字段属性值代替字段名的显示。“字段注释”:提供对字段的注解,供用户做说明或备忘。“标题”:在浏览窗口、表单和报表中,利用“标题”字段属性值代34使用命令建立表结构格式:create<表文件名>功能:建立一个表文件。说明:输入命令后,按Enter键,屏幕上会出现“表设计器”对话框,利用该对话框利用该对话框即可建立表的结构。参数描述:<表文件名>指定要创建的表的名称。使用命令建立表结构格式:create<表文件名>353.4.3表结构的基本处理方法1显示表结构格式一:liststructure[toprinter[prompt]/tofile<文本文件名>]格式二:displaystructure[toprinter[prompt]/tofile<文本文件名>]功能:显示当前表结构的有关信息。包括表文件名、记录个数、最后一次修改日起、各字段的字段号、字段名、类型、宽度和小数位,一条记录的字节总数3.4.3表结构的基本处理方法1显示表结构362、修改表文件的结构格式:modifystructure功能:显示表设计器,修改当前表文件的结构 对表结构的更改包括:添加和删除字段;修改字段名称、大小和数据类型;添加、删除或修改索引标识,以及指定是否支持NULL值等2、修改表文件的结构格式:modifystructure37(1)、删除字段第一步:将光标移到要删字段的任一位置或单击该字段的任意位置第二步:按alt+D删除该字段或单击【删除】命令按钮;第三步:按ctrl+W或单击【确定】按钮存盘,返回命名窗口说明:若删除了某些字段,对应字段的内容也将删除(1)、删除字段第一步:将光标移到要删字段的任一位置或单击该38(2)、插入新字段第一步:将光标移到要插入字段下一行的任一位置或单击要插入字段的下一字段第二步:按alt+I或单击【插入】命令按钮,便可插入一个新的空字段,在空字段的位置上可以填入新字段名称、类型、宽度及小数位;第三步:按ctrl+W或单击【确定】按钮存盘,返回命名窗口(2)、插入新字段第一步:将光标移到要插入字段下一行的任一位39(3、修改字段名、宽度、类型和小数位)将光标移动要修改处直接进行修改。一个字段有四个结构参数项,每次只能修改其中一个项。如果需要修改其中多项,为了不丢失数据,应分为多次进行修改,每次修改存盘后继续修改,直到结束。修改字段类型时,可能造成数据丢失。无论进行何种修改,退出modifystructure命令的方法与退出create命令环境的方法相同。(3、修改字段名、宽度、类型和小数位)将光标移动要修改处直接403、复制表结构格式:copystructureto<表文件名>[fields<字段名表>]功能:将当前打开的表文件结构的部分或全部复制到<表文件名>所指定的一个表的结构参数描述:<表文件名>:指定生成新表结构的表文件名Fields<字段名表>:指定在新表中包含的字段及顺序。3、复制表结构格式:copystructureto<表文414、建立表结构的其他方法(1)生成表结构文件格式:copystructureto<表结构文件名>extended功能:它将当前表的结构复制生成一个特殊的表文件,即表构伸展文件(2)将表结构文件还原成表结构格式:create<表文件名>from<表结构文件>功能:将表结构文件还原成为普通表文件。新建的表文件是一只有结构部分而没有记录的表结构框架。4、建立表结构的其他方法(1)生成表结构文件423.5记录基本处理方法3.5.1表的打开与关关闭 使用任何一个表以前,都必须首先打开表。格式:use[<表文件名>][EXCLUSIVE][SHARED]功能:打开制定的表文件。参数描述:<表文件名>:指定要打开的表的名称。[exclusive]:以独占的方式打开表3.5记录基本处理方法3.5.1表的打开与关关闭43[shared]:以共享的方式打开表。打开表时若含有备注型字段,则FPT文件也同时打开。每个表被打开时均赋予一个别名。若省略ALLAS<别名>,则其别名与主文件同名。若不选择任何参数,表示关闭当前工作区中已打开的表。在任一时刻,每个工作区最多允许打开一个表。如果指定工作区中已有表打开,在打开新的表时,系统总是先关闭原来打开的表。打开表时,记录指针指向第一条记录。[shared]:以共享的方式打开表。44添加记录删除记录修改记录查看记录添加记录453.5.2使用浏览器操作表使用“项目管理器”浏览表中的记录:(1)首先打开“项目管理器”并选择“数据”选项卡。(2)在“数据”选项卡中选择要浏览的表。(3)单击“浏览”按钮,系统即打开该表的浏览窗口。 在浏览窗口中,一行显示一条记录,一列显示一个字段的数据。字段名作为浏览窗口的列头显示在浏览窗口的最上方。缺省情况下,浏览窗口中的字段显示顺序由表结构中定义的字段顺序所决定。
3.5.2使用浏览器操作表使用“项目管理器”浏览表中的46使用BROWSE命令浏览记录命令格式BROWSE[FIELDSFieldname]命令功能 该命令用于打开浏览窗口以浏览表中的记录FIELDSFieldname子句用于指定在浏览窗口中显示哪些字段。Fieldname参数可以指定一个或多个字段名,字段名之间要用逗号分隔。使用BROWSE命令浏览记录命令格式47修改记录:在浏览器中修改记录的值,只需要将光标定位在要修改的记录和字段上,然后直接修改就可以了。删除记录:分为逻辑删除和物理删除两个过程。DEELETE逻辑删除PACK物理删除RECALL逻辑删除恢复修改记录:在浏览器中修改记录的值,只需要将光标定位在要修改的483.5.3增加记录1、APPEND[BLANK]命令向表的尾部添加记录。若选用BLANK参数,则向表的尾部添加一条空记录。2、INSERT[BEFORE][BLANK]命令向当前记录(或之后)位置插入一条记录。若选用BLANK选项,则需再用EDIT、CHANGE、BROWSE命令交互输入记录的值。3.5.3增加记录1、APPEND[BLANK]命令49修改记录的命令:1、用EDIT、CHANGE命令交互式修改。此命令默认编辑的是当前记录。2、用REPLACE命令直接修改。(p60)REPLACEFileName1WITHeExpression1显示记录的命令:LIST|DISPLAY修改记录的命令:1、用EDIT、CHANGE命令交互式修50查询定位命令(p54)GOrecno/top/bottom命令功能该命令用于将记录指针定位到指定的记录上,使该记录成为当前记录。SKIP[nRecords]该命令用于将记录指针相对于当前记录向前或向后移动n条记录。查询定位命令(p54)GOrecno/top/bottom51LOCATEFOR[lExpression]P73 该命令可以在指定的记录范围内将记录指针定位到满足给定条件的首条记录上。CONTINUE 该命令与LOCATE命令搭配使用,以查找满足给定条件的下一条记录。LOCATEFOR[lExpression]P7352索引(P66)1基本概念若要按特定的顺序定位,查看或操作表中的记录,可以使用索引VFP索引是由指针构成的文件,这些指针逻辑上按照索引关键字值进行排序。索引文件和表文件分别存储,并且不改变表中记录的物理顺序。实际上,创建索引是创建一个由指向.dbf文件记录的指针构成的文件。索引(P66)1基本概念53四种索引的概念与区别:主索引:在一个表中,指定字段或表达式不允许有重复值,而且可以起到主关键字的作用的索引,为主索引。一个表只能创建一个主索引。候选索引:同主索引具有相同的特性,要求字段的唯一性。在一个表中,可以建立多个候选索引。四种索引的概念与区别:主索引:在一个表中,指定字段或表达式不54唯一索引:允许字段的重复值,但建立索引之后,只保持第一次出现的索引项。一个表可以建立多个唯一索引。普通索引:允许字段的重复值,建立索引之后,索引项中也可以出现重复值。一个表可以建立多个普通索引。四种索引的概念与区别:唯一索引:允许字段的重复值,但建立索引之后,只保持第一次出现552在表设计器中建立索引:1、单项索引:基于一个字段建立的索引。在“字段”选项卡中定义字段时就可以直接指定某些字段是否是索引项。如果选择了升序或降序,则在对应的字段上建立了普通索引,索引名与字段名同名,而索引表达式就是对应的字段2、复合索引:基于多个字段建立的索引。注意:索引可以提高查询速度,但是维护索引需要付出代价,因此并需要在每个字段上都建立索引2在表设计器中建立索引:1、单项索引:基于一个字段建立的563用命令建立索引1.命令格式:INDEXON<索引表达式>TAG<索引名>[FOR<条件>][ASCENDING|DESCENDING]2.命令功能:按指定<索引表达式>为当前表创建一个指定名称的索引。3用命令建立索引1.命令格式:571.单字段索引例:已有一表文件工资.DBF,按基本工资排序,执行下述命令:INDEXON基本工资TAGJBGZLIST11002胡一民585.003.5103.5041010宋文彬596.943.0100.5031005张小612.274.0100.5061015黄小612.2712.0100.5081031丁卫国612.2714.01012.0071022李红卫623.4512.01014.6021004爱民628.3420.0100.5051011胡一民645.2615.51018.34记录号职工号姓名基本工资工龄工资补贴房电费1.单字段索引11002胡一582.多字段索引如果在索引表达式中使用多个字段,就是根据多字段来排序记录。例5:对工资.DBF表,按实发工资索引记录。USE工资INDEXON基本工资+工龄工资+补贴–房电费TAGSFGZLIST记录号职工号姓名基本工资工龄工资补贴房电费11002胡一民585.003.5103.5041010宋文彬596.943.0100.5081031丁卫国612.2714.01012.0031005张小华612.274.0100.5071022李红卫623.4512.01014.6061015黄小英612.2712.0100.5051011胡一民645.2615.51018.3421004王爱民628.3420.0100.502.多字段索引594使用索引1、打开索引文件SETINDEXTO<索引文件列表>2、设置当前索引SETORDERTO[TAG][索引文件名][ASCENDING|DESCENDING]3、使用索引快速定位
SEEK<索引项或索引关键字的值>[OREDR[TAG]TagName]4、删除索引DELETETAG<索引文件名>4使用索引1、打开索引文件605数据完整性 在数据库中数据完整性是指保证数据正确的特性,包括实体完整性域完整性参照完整性5数据完整性 在数据库中数据完整性是指保证数据正确的特615.1实体完整性与主关键字何谓实体完整性? 实体完整性是保证表中记录惟一的特性,即在一个表中不允
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 白杨课件教学课件
- 表演用背景课件
- 《民航飞机电气系统(第2版)》课件 第7章 地面电源与发动机电力启动
- 四年级丑菊苏教版课件
- 国家医疗质量安全与安全管理目标提高不良事件报告率(2026版)
- 口腔科病人的护理概述
- 发展性学生评价体系的选择与实现
- 实验室质量管理体系中的过程控制
- 2026初中生物教资面试遗传定律历年真题含答案解析
- 小学三年级下学期语文第9课亡羊补牢课件
- 护理安全隐患及防范措施
- 国有六大行《EPI(行测)》考试1000题
- EIA-481-1 中文版(8-12mm 贴片元器件穿孔载带包装标准 2025 版)
- 2026融资面试题目及答案详解
- 土建工程专业分包合同
- 2025年共享工厂模式:中小微企业集群化生产资源整合
- 2026年中国人民保险集团招聘笔试综合能力测试题库
- SLT 336-2025水土保持工程全套表格
- 2026受限空间作业安全培训课件
- 2026年安全工程高级工程师专业实践考试题集
- 广东省惠州市惠州中学2026届高三上英语期末学业质量监测试题含解析
评论
0/150
提交评论