数据库系统课程设计模板.doc_第1页
数据库系统课程设计模板.doc_第2页
数据库系统课程设计模板.doc_第3页
数据库系统课程设计模板.doc_第4页
数据库系统课程设计模板.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课 程 设 计 说 明 书设计题目: 数据库课程设计 专 业: 物联网工程 班级: 2012级2班设 计 人: 温少镭 201201051924 山 东 科 技 大 学2014 年 06 月 27 日山 东 科 技 大 学课 程 设 计 任 务 书物联网该工程 专业2012 级 2班一、 课程设计题目:数据库系统课程设计 二、 设计原始资料:数据库系统概论 三、 设计应解决下列各主要问题:1 选择一种高级语言实现下列语句的功能。 CREATE TABLE (, ) ALTER TABLE ADD DROPMODIFY 四、 设计说明书应有下列图纸: 1.实现界面图 2.流程图3.功能结构图五、命题发出日期:2014年04月18日 设计应完成日期:2014年06月27日 设计指导教师(签章):系主任(签章):指导教师对课程的评语指导教师(签章):年月日18山东科技大学学生课程设计摘要本段程序实现的主要功能是创建和修改基本表。从用户运行程序开始,在控制台中有相应的提示,用户根据提示输入指令,程序会执行相应指令。程序执行后进入循环,开始接受用户的命令并且储存在字符串中。下一步将字符串送到checkfirst函数中进行检查。检查是创建命令还是修改命令或者是退出程序命令,当检查正确后进行下一步操作。如果上一部判断得出是创建命令,则进入create函数,提取用户输入语句中的属性名、数据类型、数据长度和完整性约束条件,然后调用savedata和savet_name函数将数据存入相关文件。如果是修改命令,则进入alter函数,首先判断将要修改的表是否存在。要操作的表名存在时,可对表执行三种类型的操作,即增加新的列(add),修改数据类型(modify)和删除表的完整性约束条件(drop)。alter函数执行后将保存数据。每完成一个相应的命令,程序都保存数据到TXT文件中。关键词:创建 修改 删除目录1 设计题目31.1所选题目31.2 设计要求31.3 开发环境32 需求分析42.1题目分析42.2功能需求分析52.2.1 程序流程图53.1 设计思想73.2算法74 实现154.1以命令方式运行的实现过程155 总结181 设计题目1.1所选题目1. 选择一种高级语言实现下列语句的功能。CREATE TABLE (, )ALTER TABLE ADD DROPMODIFY 1.2 设计要求(1) 能够以命令方式执行; (2) 能够以程序方式执行;(3) 提供课程设计报告。1.3 开发环境操作系统: Windows 7.0;集成开发工具:codeblocks;开发语言: C语言。2 需求分析2.1题目分析课程设计题目要求脱离已有数据库环境,采用高级语言,根据所建立特定的数据库表文件,实现表的增删改等。2.2功能需求分析根据所建立特定的数据库表文件,实现表的增删改等功能。2.2.1 程序流程图图2.2说明了解析模板的工作机制。图 2.2 解析模板的工作机制3 设计3.1 设计思想Teacher表文件结构如表3.1所示。表3.1 Students类属性说明属性名数据类型属性说明TNAMEString教师姓名TNOString工号TAGEString年龄TPAYString工资本程序要求创建若干工作表,在所建表的基础上实现对工作表的增加新列、删除列、修改列等的相关操作,这个程序的设计就是实现创建和修改表的定义。语句输入的形式是以分号(;)为结束标志的字符串,串中字符不区分大小写程序能自动将q其变为小写。3.2算法main函数模块 程序的入口,程序执行时,首先进入main函数,无条件执行while语句,用户首先输入字符串并存放在str数组中,并调用checkfirst函数。int main() 声明相关变量; while(1) 程序提示用户输入SQL语言; checkfirst(str)用来判断输入的语句; 执行create函数或alter函数; 询问用户是否继续; ;测试结束;main函数流程图:checkfirst函数退出checkfirst函数模块 主函数将调用Checkfirst函数,checkfirst函数判断用户输入的语句是create还是alter或是其他,即是创建基本表还是修改基本表或是退出程序。简要代码如下:int checkfirst(char *str)/检查输入的函数名是否正确 int i; char temp100; for (i=0; stri!= ; i+) tempi=tolower(stri);/变小写 头文件可以是ctype.h或者stdlib.h,常用ctype.h flag=i+1; tempi=0; /语句输入完成 if (strcmp(temp,create)=0)/temp是“create”,则执行create函数,创建基本表 create(str); else if (strcmp(temp,alter)=0)/temp是“alter”,则执行alter函数,修改基本表 alter(str); else printf(输入的命令不对n); return 0;checkfirst函数流程图:alter函数create 函数create模块和alter模块1) create函数int create(char *str) num=0; /属性个数 bnum+; /当创建一个基本表的时候,bnum加1 if (输入的table有误) printf(你输入的table有误,请重新创建!n); else /输入的table 正确 提取表明,将此表名存入extable.table_name中,并在表明后加.txt do extable.shuxingnum.shuxing_type_leg=-1; /属性长度默认值为-1 提取属性名 提取数据类型 提取数据长度 提取关键字 while (分号);/创建语句未结束 savedata();/保存数据 savet_name();/保存表名 输出 “建表成功”! create函数流程图:savedata函数savet_name函数2) alter函数int alter(char *str)/修改基本表 TABLE altable; /定义基本表类型变量 FILE *fp; if (输入的table有误) printf(你输入的table有误,请重新创建!n); else /输入的table正确 提取表名 判断表名是否重复 if(表名存在) if(add函数) 属性个数加1 提取添加的属性名 提取属性类型 提取属性长度 提取约束条件 将属性名、属性类型、属性长度和约束条件写入fp所指向的文件中 关闭文件 add成功; else if(modify函数) 读数据 以只写打开一个文本文件 提取字段名 提取数据类型 修改数据类型 将修改后的信息写入fp所指向的文件中 关闭文件 Modify成功 else if(drop函数) 读数据 以只写打开一个文本文件 提取属性的完整性约束条件 删除该完整性约束条件 将修改后的信息写入fp所指向的文件中 关闭文件 drop成功 else 提示输入错误 alter函数流程图: drop函数modify函数add函数4.4保存数据模块当新创建一个工作表时,程序将打开一个存储文件名的文件(table_name.txt文件),将新建的表明存入其中,而且将基本表的属性名、属性类型、属性长度及完整性约束条件保存在相应数组(extable.shuxing)中。函数如下:1)int savet_name() /保存基本表名称的函数 FILE *fp1; fp1=fopen(table_name.txt,a+);/a+以读/写方式打开一个文本文件 fprintf(fp1,%sn,extable.table_name);/将表名写到fp1所指向的文件中 fclose(fp1);/关闭文件 return 1;2)int savedata() /保存数据 FILE *fp; /FIEL是一种数据类型,定义fp文件指针 int i; fp=fopen(extable.table_name,w);/w 打开只写文件若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件for (i=0; inum; i+) /fprintf函数,格式化输出到一个流/文件中 fprintf(fp,%-10s,extable.shuxingi.shuxing_name); fprintf(fp,%-10d,extable.shuxingi.shuxing_type); fprintf(fp,%-10d,extable.shuxingi.shuxing_type_leg); fprintf(fp,%-10dn,extable.shuxingi.yueshukind); fclose(fp);/关闭文件 return 1;模块之间的调用关系图反映了演示程序的层次结构 main checkfirst create alter savedata savet_name search_name readdata savedata savet_name 4 实现4.1以命令方式运行的实现过程测试输入:Create table teachertno char同时在table_name文件中新增了一个teacher.txt表名,如下所示:2) 如下是测试alter语句:alter table teacher add tsex;alter tabl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论