- 1、本文档共34页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库课程设计说明书---设计简易的数据库管理系统DBMS
设计要求:
(1) 设计内容创建和修改表的定义设计创建和修改表的定义创建和修改表的定义typedef struct
{
char table_name[10];//表名
int property_num;//属性的个数
char property_name[10000][10];//属性名
int property_type[1000];//属性类型(1=int,2=char)
int property_null[100];//属性是否为空(1=允许,2=不允许)
int property_key[10];//是否主码(1=是主键,2=不是主键)
}TABLE;
2、我用一个TABLE型的数组将所有的表联系在一起,具体定义为TABLE table[10000];
3、定义一个int型变量记录表的个数,具体定义为int table_num=0。
(3)保存表信息
首先打开或新建一个文本文档,取名为table.txt。由于执行此程序时可能对之前存在的表进行内容或结构的修改,如果对表进行修改之后直接在table.txt中存储此表的原位置进行比较麻烦,因此,在保存表信息的处理上,我采用了一种较为简单的办法,即在对表进行所有的操作之后,将表信息存储到table.txt中,覆盖掉原来已经存储的表的信息。这样则只需要一次存储就可以。
其次,储存表信息时,我采用的方法是首先存储表的个数,然后按照表的个数依次循环保存每一个表的信息。在保存每一个表的信息时,首先保存这个表的表名,然后存储这个表所拥有的属性个数,然后按照属性的个数依次循环保存每一个属性的性质。这样在提取的时候就比较简单。
(4)提取表信息
由于保存表信息时采用一定技巧,因此提取时只需要按照保存表信息的思路进行提取就可以了。首先第一个提取出来的是里面保存的表的个数。然后按照表的个数依次循环提取每一个表的信息。在提取每一个表的信息时,首先提取的是这个表的表名,然后提取这个表所拥有的属性个数,然后按照属性的个数依次循环提取每一个属性的性质。这些提取的表的信息依次存储在table[0]、table[1]……中。
(5)日志文件
在进行每项操作时都需要将操作记录到日志文件中,因此写入日志文件并没有一个特意制定的函数,而是在每一步操作后都有相应的语句记录相应的操作,例如,在打开程序进行读取表信息后需要记录“读取数据并初始化各项信息”。
(6)新建表
1、输入表名:建表的第一步就是需要输入表名,输入完成后进行检查,此表名是否已经存在,若已存在将提示错误信息,并要求重新输入;如正确,则进行下一步。
2、输入属性的个数:输入属性个数之后需要检查属性个数是否正确,即属性个数是否为非整数。若属性个数错误则将提示错误信息,并要求重新输入,按任意键就可回到输入属性个数的界面并重新输入;若正确,则进行下一步。
3、输入属性名:按照上面输入的属性个数,将依次循环直到所有的属性都输入完成。输入属性性质的第一步就是输入属性名。输入属性名之后,需要检查与此表中已经存在的属性的属性名是否相同,若有相同的,则将提示错误信息,并要求重新输入,按任意键就可回到输入属性名的界面并重新输入;若正确,则进行下一步。
4、选择属性类型;选择属性类型之后,需要判断选择是否正确,若不正确,则将提示错误信息,并要求重新输入,按任意键就可回到输入属性类型的界面并重新输入;若正确,则进行下一步。
5、选择属性是否允许为空:选择属性是否允许为空之后,需要判断选择是否正确,若不正确,则将提示错误信息,并要求重新输入,按任意键就可回到输入属性是否允许为空的界面并重新输入;若正确,则进行下一步。
6、选择属性是否为主键:选择属性是否为主键之后,需要判断选择是否正确,若不正确,则将提示错误信息,并要求重新输入,按任意键就可回到输入属性是否为主键的界面并重新输入;若正确,则进行下一步。属性是否为主键输入完成后还需要检查一步,若选择的属性允许为空且此属性为主键,则将属性是否允许为空改为不允许。
7、依次循环3-6步,直到所有的属性全部输入完毕。将此表的信息赋值到table[table_num]中。完成表的建立,记录操作,并提示建表成功,按任意键返回主菜单。
(7)修改表
1、选择操作:若没有可修改的表,则显示无表可修改,否则显示可以进行的操作,并进行选择,并检查输入的选择是否正确,若不正确,则将提示错误信息,并要求重新选择,按任意键就可回到选择操作的界面并重新输入;若正确,则跳到指定的操作的界面。
2、修改表名:若选的是“修改表名”,则提示输入表名,输入完成后进行检查,此表名是否已经存在,若已存在将提示错误信息,并要求重新输入;如正确,则提示修改表名成功,按任意键返回主菜单,并在日志文件中记录相对应的
您可能关注的文档
最近下载
- 人工造林项目投标方案.doc
- 泸州市联合环保产业有限公司2024年第一次公开招聘笔试备考试题及答案解析.docx
- 2024年6月英语四级真题(全3套)及答案解析.pdf
- 大学生健康与安全教育学习通超星期末考试答案章节答案2024年.docx
- 乡村振兴的实践探索(北京大学)超星尔雅学习通网课章节测验答案.doc VIP
- 数学知识点初一上.docx VIP
- 2024年矿山生态修复项目融资计划书.docx
- 四年级上册 数学 期中考试专题 作图题(含答案) 人教版.doc VIP
- 天津市河东区2023-2024学年七年级上学期期末数学试题(含答案).docx VIP
- 2024北京市考行测真题及答案.pdf
文档评论(0)