- 1、本文档共28页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
20071395-王蒙-综合文档.doc
数据库系统原理
课程设计文档
学号:
姓名: 王蒙
一、DBMS的实现方式
1.运行环境:Microsoft Visual C++6.0;
2.运用C++语言实现
二、DBMS的功能介绍
1.创建数据库及数据操作功能
(1)建立数据库表的结构的功能
用户可以使用create table 创建数据库表。数据库表以文件的形式保存,可以包含整型和字符型的属性,每个表有一个主属性。DBMS中还有一个数据字典,用来保存所有表的基本信息。
(2)输入数据库记录的功能
用户可以使用insert into向指定表中插入数据。插入数据时可以指定属性,如果不指定属性,DBMS自动的认为要插入的是表的全部属性值。
(3)删除数据库记录的功能
用户可以使用delete删除表中的指定元组。当用户输入的命令中不包含选择条件时,DBMS认为是删除表中的所有元组,但不删除表。如果包含选择条件,DBMS会查找表中满足条件的元组,将其删除。
(4)修改数据库记录的功能
用户可以使用update对表中的元组进行修改。DBMS根据用户的选择条件,有哪些信誉好的足球投注网站表中的元组,找到指定元组后修改其对应属性值。
(5)修改表结构的功能
用户可以使用alter add向表中添加新的属性,也可以使用alter drop删除表中的属性。删除属性时,也删除表中元组对应的属性值。
注意:表中的主属性无法删除。
(6)删除表的功能
用户可以使用drop table 删除指定的表。DBMS不仅将表的信息从数据字典中删除,还将表的全部属性以及数据删除。
2.查询功能
真实的DBMS能够做的查询功能非常多,包括group by分组,order by排序,以及一些统计函数如:count(),avg(),max(),min()等等。由于时间关系,该DBMS只模拟了简单的查询工作。功能如下:
实现全关系选择操作(select * from 关系名)。
实现单关系的投影操作。
实现单关系的选择操作(允许多条件)。
实现单关系的选择和投影操作(允许多条件)。
实现两个关系和多个关系的连接操作。
实现两个关系和多个关系的选择和连接操作。
实现多个关系的选择、投影和连接操作。
3.索引的创建以及查询
(1)创建索引的功能
用户可以使用create index为指定的表创建索引。真实的DBMS可以创建的索引种类非常多,如:为主属性建立索引,为非主属性建立索引,为某属性建立B树索引等。在这里只实现了为表的主属性和非主属性建立稠密索引,没有实现B树索引。
(2)利用索引进行查询的功能
利用索引属性完成选择操作,记录完成操作花费的时间,在建立索引前的关系上执行同样的选择操作并进行时间代价的比较。利用索引属性完成连接操作,记录完成操作花费的时间,在建立索引前的关系上执行同样的连接操作并进行时间代价的比较。
(3)删除索引的功能
用户可以使用drop index命令删除索引。
4.数据库保护功能
数据库的保护主要是安全性与完整性检查。即用户需要输入用户名和密码才能进入数据库,对数据库的表进行操作。用户可以使用create user创建新的用户,也可以使用grant和revoke将指定表的某项操作的权限赋值给某一个用户。
注意:以上操作的前提是该用户具有这些权限。
三、DBMS算法实现
算法描述
基本表的数据结构:
基本表的结构体:
struct Table
{
char Name[20];
char type;
bool flagi;
char name[10][20];
int Number;
bool flag;
}table;
2表中属性的结构体:
struct Property
{
char pro[20][20];
int type[20];
int primary;
int count;
}property;
3.表中元组的结构体
struct Data
{
char d[20][20];
bool flag;
}data;//插入表中的数据
词法分析:
事先将sql语句的关键字存储在一个二维数组中key。具体关键字如下:
char key[maxsize][20]={
{alter},{by},{contains},{drop},{exists},
{from},{group},{having},{in},{primary},
{minus},{not},{order},{select},{table},
{unique},{key},{view},{where},{is},
{char},{null},{add},{on}
您可能关注的文档
- 008441003《日本文学选读》.doc
- 0121108670238__宋文璐__企业管理模拟报告书正文部分.doc
- 04265 社会心理学.doc
- 04845媒体艺术概论大纲.doc
- 072010414张萌数字图像处理.doc
- 08060427-先进制造技术.doc
- 0942152116-彭灿《嵌入式系统及应用》大作业模版.doc
- 11733 动画视听语言.doc
- 12011008_2013级《专业导论》课程教学大纲.doc
- 12250401102 卞乙(时间序列实验2).doc
- 2025年漳州职业技术学院单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析.docx
- [整理版]水泥供货合同5篇.docx
- 2025年漯河食品职业学院单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析.docx
- 2025年漯河食品职业学院单招英语2014-2024历年真题考点试卷摘选含答案解析.docx
- 2025年漯河食品职业学院单招语文2019-2024历年真题考点试卷含答案解析.docx
- 建设工程习题-单独案例讲解一.pdf
- 2025年漳州卫生职业学院单招职业适应性测试历年(2019-2024年)真题考点试卷含答案解析.docx
- 初中数学教师工作总结范文精选.pdf
- 2025年漳州卫生职业学院单招英语2014-2024历年真题考点试卷摘选含答案解析.docx
- 2025年漳州卫生职业学院单招语文2019-2024历年真题考点试卷含答案解析.docx
文档评论(0)