家庭数据库(Home DataBase,HDB)
目录 |
家庭数据库是存储资料、知识、工作文件、音视频节目的载体,是支持家用多媒介平台的基石。
为了对家庭中的各种类型的信息进行管理,首先必须在电脑中建立一个家庭用数据库的结构。关系型数据库的结构非常简单,是由一个个数据文件组合而成的,而每一个数据文件相当于一个二维表格。每个表格中填写有一类数据,各表格之间由共同的数据项建立关系,形成一个包括各方面数据的数据库。
对现代家庭来说,需要管理各方面的信息。能建立的数据库文件也可以有多种。例如:家庭财务管理,家庭通讯录,商品信息,股票行情,高考信息等等。以下,我们仅以家庭通讯录数据库为例.讨论如何建立一个数据库文件。
在建立数据库之前,您首先应该设计好数据库表格的结构,也就是说决定这个二维表格的表头。有几个表项,各表项名称,表项中的内容是什么数据类型,占据多少字符位置。
例如:我们要建立—个名为:(通讯录.DBF)的家庭通讯录数据库文件。其中包括以下内容:姓名、单位、出生日期、年龄、职务、地址、电话和备注。这些内容为二维表格中的—‘个个表项,叫作数据项,又叫字段。各字段类型也应规定好。如姓名和地址是字符型;年龄是数字型,备注字段由于字数不定,可规定为明细型,出生日期应该是日期型等。
对于各字段的宽度,应该注意到一个汉字相当于西文两个字符位置,因此,姓名考虑到有双姓存在可以取宽度为8;单位可能需要十个汉字,故字段宽度可取20位。数值字段一个数位占——位,小数点也要占一位字符位置,年龄字段由于都是整数,并且没有超过100岁的,可取2位宽度。备注是明细型字段,字段宽度是固定的,为10位,实际上可以存放不超过4096个字符的内容。
假定家庭通讯录数据库<通讯录.DBF>的结构已决定好,各数据项的数据结构定义如下:
1)姓名 字符型 宽度 8
2)单位 字符型 宽度 20
3)出生日期 日期型 宽度 8
4)年龄 数字型 宽度 2
5)职务 字符型 宽度 8
6)地址 字符型 宽度 20
7)电话 字符型 宽度 12
8)备注 明细型 宽度 10
这相当于画一个二维表格的表头,表头形式如表l。
姓名 | 单位 | 出生日期 | 年龄 | 职务 | 地址 | 电话 | 备注 |
在完成数据库结构设计之后,就可以用dBASE Ⅲ的命令在电脑中建立一个数据库了。进入dBASEⅢ状态,屏幕出现“.”提示符,键入命令:
CREATE B:通讯录.DBF
CREATE是建立数据库的命令,dBASEⅢ的命令都可以只输入前四个字母。故也可打入CREA代替。接着输入的是家庭通讯录的文件名,执行这个命令后就在磁盘上建立了名为<通讯录.DBF>的数据文件。文件名最好用汉语拼音,以后每次使用时比较方便。例如用TXL代替“通讯录”三个汉字,输入就方便多了。DBF是文件扩展名,是dBASE固定给数据文件的,表示了文件类型。不能改成别的。
以上命令执行后,屏幕显示:
B:通讯录.DBF
field name type width dec
l char/text
第一项(field)是字段号,由电脑自动生成,每输入一行自动加1。name为字段名,由用户填入;type为数据类型;width为字段宽度;dec为小数点位置,如果是数值字段时需填写。开始时光标在name位置,在您填入“姓名”并回车后,光标移到type位置,此位置有提示:“char/text',是表示字符型字段,现在姓名是字符段字段,故打回车,光标跳到width。如果不是字符型字段可按空格键,每按一次在type位置会依次显示;Num(数字型)、Date(日期型)、Mem(明细型)供您选择。当显示某一种类型时按回车键,类型就定义好了。在width位置输入字段宽度,如姓名字段为8,键入“8”后按回车,光标将移到下一行,等待您输入第二个字段的定义。如果字段是数字型字段,在宽度定义后光标会移到dec位置,请您输入有几位小数。
按以上方式可以顺序输入一个个字段的名称、类型、宽度、小数等定义。当一个数据库文件的八个字段都定义完毕时,光标跳到第九项位置,此时按下组合键Ctrl+W,屏幕提示:Hit RETURN to confirm—anykey to Resume
按下回车键则将刚刚定义的数据库结构(也就是二维表格的表头)存放起来,若按其他键可以重新显示刚才的定义结构画面。您可以用光标移动键把光标移动到刚才输入错误的地方,进行修改。修改后可用(ESC)键退出。
向建成的数据库中输入数据好比是填写表格,向刚建成的数据库中输入数据好像是填写空白表格。向一个已经有部分数据的数据库中输入是增加新记录,可以有几种方式。如向表格后面添加(APPEND),向表格中间插入(1NSERT),以及修改、删除已存记录等等。
1.用CREAT命令建立库结构后的初始录入
在腐CREAT命令建立库结构并用Ctrl+W结束建库,并选择回车键之后,屏幕显示:Input data record now(Y/N)
如果按下N,电脑退回dBASE的“。”提示符下。可以执行其他dBASE命令,比如再建下一个数据库。
如果按下“Y”,屏幕显示出刚才定义的一个表格内容项目名称,请您顺序填写。也就是从表格第一行开始,逐列填写表格了。
Re.rd NO 1
姓名
单位
出生日期//
年龄
职务
地址
电话
备注 Memo
可以顺序填入各数据项(字段),的内容,每填好一项用回车结束,光标自动跳到下一项目上,可以继续输入下一个数据项字段内容,全部输入完毕即是输入完表格一行。按回车键,屏幕舍显示下一个记录的各数据项,可继续输入,即填写表格下一行。
2.输人数据时有几点要注意:
(1)除M字段以外,输入内容宽度只能按数据定义时设置的宽度,一旦到达设定宽度,光标自溅到,下一宇段上,但如果输入的内容未达到定义字段宽度可以用回车键结束。
(2)M型字段输入方法是:当光标在Memo下面时,按下Ctrl+PgDn组合键,系统便显示一个空白屏幕,上方显示:
DBASE WORD PROCCESSOR
可以用类似WORDSTAR中的全屏幕编辑方式输入一段文字作为Memo字段的内容。字数不得超过4096个字节,即2048个汉字。输入结束后,按下Ctrl+W键,电脑返回输入数据记录的画面,可继续输入其他字段内容。此时输入的Memo字段被存入名为通讯录.DBT文件中。这个文件是当您在一个数据库中使用记忆字段时,由dBASE自动产生的,文件名与主文件同名,扩展名为.DBT。
当一个数据库中全部记录输入完毕以后,在最后一个记录最后一字段输入完毕用Ctrl+W可以结束输入状态,返回dBASE提示符下。或者当一个空白记录出现时,按下回车键也可以退出输入状态。
假如第一次录入时共输入五个记录,输入的数据库内容见表2。
Record# | 姓名 | 单位 | 出生日期 | 年龄 | 职务 | 地址 | 电话 | 备注 |
1 | 王山 | 北京大学 | 06/03/44 | 49 | 副教授 | 北大68--1—5 | 8214532 | Memo |
2 | 李义 | 北京航空航天大学 | 05/16/53 | 40 | 工程师 | 北航45--2-3 | 4965321 | Memo |
3 | 刘留 | 清河毛纺厂 | 02/22/60 | 33 | 工人 | 北航36--13 | 285211 | Memo |
4 | 李维 | 地质大学 | 07/07/73 | 20 | 学生 | 地大27--21 | 2595361 | Memo |
5 | 李燕平 | 北京工业大学 | 01/30/75 | 18 | 学生 | 北工大35--25 | 8806245 | Memo |
一个数据库的内容不可能一次输入完毕,需要不断增加。比如您结识了一位新朋友,要将他的通讯地址加入到通讯录上,就要向数据库中追加一条新记录。所以对于已经有数据的数据库中需要经常进行添加工作,就像在二维表格中新增加一行。添加记录的命令格式如下:
.APPEND[BLANK]
[ ]的意思是:命令中[ ]中的内容可能有,也可以没有。
此命令有几点应注意:
(1)对于一个数据库进行操作之前,应该先打开这个数据库,“打开”的意思好比我们要修改一篇文章,先要从书架上找到并打开,才能开始进行添加修改一样。打开磁盘中数据库文件的命令是:.USE<文件名><>中的内容是命令中必须有的,并且根据<>说明填写。
打开一个文件后,以后的操作命令都是对这个文件进行的。如果想使用另一文件,需执行另一条打开文件命令,则原来打开的文件就自动关闭了。
所以要向通讯录中添加一条记录时应执行两条命令:
这个命令的意思是在数据库原有各记录之后,添加一个新记录。
如果APPEND命令后带有BLANK参数,则自动添加一个空白记录。将来可以用其他方式输入数据,如果没有参数,屏幕显示一个数据记录结构,请您填写:
Record NO 6
姓名
单位
出生日期 //
年龄
职务
地址
电话
备注 memo
由于原来数据库中已有5条记录,则显示记录号6,从第6号记录开始添加。方法与建库时输入方法一样,每一记录输入完毕,自动显示下一空白记录,可继续输入。如果结束输入可在显示空白记录时输入回车键,或在输入中按下Ctrl+W。
假如这时您填入两个新记录:
Record# | 姓名 | 单位 | 出生日期 | 年龄 | 职务 | 地址 | 电话 | 备注 |
6 | 张三丰 | 机床二厂 | 01/17/59 | 34 | 工人 | 地大48--41 | Memo | |
7 | 李丽 | 北佳公司 | 03/15/50 | 43 | 讲师 | 工大17--15 | 8864521 | Memo |
通讯录数据库中就已有了7个记录了。