用C语言实现CREATE TABLE 和ALTER TABLE的功能

上传人:人*** 文档编号:547474278 上传时间:2023-06-28 格式:DOC 页数:20 大小:272.30KB
返回 下载 相关 举报
用C语言实现CREATE TABLE 和ALTER TABLE的功能_第1页
第1页 / 共20页
用C语言实现CREATE TABLE 和ALTER TABLE的功能_第2页
第2页 / 共20页
用C语言实现CREATE TABLE 和ALTER TABLE的功能_第3页
第3页 / 共20页
用C语言实现CREATE TABLE 和ALTER TABLE的功能_第4页
第4页 / 共20页
用C语言实现CREATE TABLE 和ALTER TABLE的功能_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《用C语言实现CREATE TABLE 和ALTER TABLE的功能》由会员分享,可在线阅读,更多相关《用C语言实现CREATE TABLE 和ALTER TABLE的功能(20页珍藏版)》请在金锄头文库上搜索。

1、山东科技大学学生课程设计数据库课程设计说明书 设计题目: 用C语言实现CREATE TABLE 和ALTER TABLE的功能 专 业: 班 级: 设 计 人: 2014年6月27日2指导教师对课程设计的评语 指导教师签字: 年 月 日课程设计说明书学院 信息科学与工程学院 专业 信息管理与信息系统 班级 12级2班 姓名 刘慧慧 马新红 刘金兰 一、 课程设计题目:实现下列DML语句的功能: (1)CREATE TABLE (, ); (2)ALTER TABLE ADD DROPMODIFY ; 二、 课程设计主要参考资料:(1) 数据库系统概论(第四版),王珊、萨师煊主编,高等教育出版社

2、 (2) 程序设计基础 _基于C语言,孙承爱、赵卫东主编,科学出版社 (3) C程序设计,谭浩强 著,清华大学出版社 三、 课程设计应解决的主要问题:(1)通过输入SQL语言,建立一个表。包括表名、列名、数据类型、列完整性约束条件。 (2)通过输入SQL语言,对建好的表进行修改。包括增加表的列完整性约束条件、删除表的列完整约束条件、增加列名、删除列名等。 (3)输入SQL语言,对建好的表进行插入数据,并能进行对相关数据的修改,包括增加数据,删除数据等功能。 四、 课程设计相关附件(1)数据库课程设计说明书 (2)MySql.cpp 源代码文件 一、设计要求:(1)设计内容 本演示程序要求创建若

3、干工作表,在所建表的基础上实现对工作表的增加新列、删除列、修改列等的相关操作,这个程序的设计就是实现创建和修改表的定义。语句输入的形式是以分号(;)为结束标志的字符串,串中字符不区分大小写,程序能自动将其变为小写。(2) 设计要求1、对SQL语言中基本表操作的语句里面主要字符和特殊字符的处理,以及特殊字符串的提取和字符到数字的转换2、存储基本表需要使用的物理结构、逻辑结构3、实现基本表中列元素的插入、删除、修改等功能(3)任务步骤1、定义属性结构体和基本表结构体2、创建基本表3、修改基本表一、 需求分析:1、演示程序以用户和计算机的对话方式进行,即在计算机终端显示“提示信息”之后,由用户在键盘

4、上输入演示程序中规定的运算命令;相应的输入数据和运算结果显示在唉其后。2、程序执行的命令包括: 1)创建基本表 2)修改基本表3、测试数据: (1)create table student(sno char(9) primary key, sname char(20) unique, Sage int ); (2) alter table student add ssex int; alter table student modify column char(2); alter table student drop unique;二、 设计思想:1、 本程序使用table_name.txt文件

5、存储表名来方便记录添加过的基本表和查找、修改基本表,已添加的基本表经过格式处理后用“表名.mydbf”的格式存储。2、 本程序包含建立基本表、修改基本表两大部分,具体功能见图1:基本表操作建立基本表修改基本表添加列添加完整性约束删除修改添加添加列添加完整性约束添加列添加完整性约束删除完整性约束图1其中,建立基本表包含两个部分:(1)添加列需要实现对基本表列的插入,包括列级完整性约束;(2)添加约束函数实现对基本表的表级完整性约束的插入,包括一个或多个主码,取唯一值,非空,一个或多个外码等约束条件;修改基本表包含三个部分:(1)添加添加列和完整性约束(同“建立基本表”),但是需要在文件中查找基本

6、表。(2)修改修改列属性及完整性约束,实现对已存在列元素的某些属性的修改,需要实现查找基本表和查找列的操作;(3)删除删除完整性约束条件,包括表级完整性约束、列级完整性约束的删除。三、 程序流程图:(图2)readdata退出 main checkfirstcreatealtersavedatasavet_namesearch_nameaddmodifydrop退出退出main函数 图2相关操作说明:程序首先进入main函数,无条件执行while语句,用户首先输入字符串并存放在str数组中,并调用checkfirst函数。主函数将调用Checkfirst函数,checkfirst函数判断用户输

7、入的语句是create还是alter或是其他,即是创建基本表还是修改基本表或是退出程序。当命令是create时将调用函数,当命令是alter时将调用函数.进入create函数,提取用户输入语句中的属性名、数据类型、数据长度和完整性约束条件,然后调用savedata和savet_name函数将数据存入相关文件。create函数结束,正常退出。进入alter函数,首先判断将要修改的表是否存在。要操作的表名存在时,可对表执行三种类型的操作,即增加新的列(add),修改数据类型(modify)和删除表的完整性约束条件(drop)。alter函数执行后将保存数据。alter函数结束,正常退出。返回主函数

8、。四、 主要源程序:1、main函数模块 程序的入口,程序执行时,首先进入main函数,无条件执行while语句,用户首先输入字符串并存放在str数组中,并调用checkfirst函数。int main() 声明相关变量; while(1) 程序提示用户输入SQL语言; checkfirst(str)用来判断输入的语句; 执行create函数或alter函数; 询问用户是否继续; ;测试结束;2、 checkfirst函数模块 主函数将调用Checkfirst函数,checkfirst函数判断用户输入的语句是create还是alter或是其他,即是创建基本表还是修改基本表或是退出程序。简要代码

9、如下: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函数,修

10、改基本表 alter(str); else printf(输入的命令不对n); return 0;3、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

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号