没有合适的资源?快使用搜索试试~ 我知道了~
畅想数据库管理系统(CXDB)介绍.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 173 浏览量
2021-10-03
14:49:13
上传
评论
收藏 178KB DOC 举报
温馨提示
试读
13页
畅想数据库管理系统(CXDB)介绍.doc
资源推荐
资源详情
资源评论
CXDB 介绍
高屹
2011-08-13
畅想数据库管理系统(以下简称“系统”或“CXDB”)是一个小型内嵌式数据库管理系统。
本文档的目的:让您能够用 5 分钟的时间对系统有一个概要的了解,再用 15 分钟时间简单
体验系统功能。
1. CXDB 的特性
1.1.内嵌式的数据库
CXDB 的整个系统实现在一个 DLL 文件中,以 API 函数的形式提供编程接口。开发者在程
序中调用这些接口函数,就可以完成全部的数据库操作,数据库操作就在您的程序中,是
您程序不可分割的一部分。这个 DLL 文件很小,只有几百 K。
1.2.加密的数据库
十多年前开发 MIS 系统时,用户经常要求数据在数据库内部是加密存储的,都被我严词拒
绝,做不到。后来倒是再没人提这种要求,一方面是人家也知道做不到,另一方面人家对
系统安全性也有了综合的认识,不再一味强调加密。但那时的印象挺深刻,所以当真的要
实现自己的数据库时,第一个想法就是:数据在数据库内部要加密存储。这不一定是好事
因为加密造成性能的下降很明显,参《CXDB 编程参考》中“性能测试”一章。
1.3.开发者的数据库
作为一种后台支持,任何数据库都是“开发者”的。最终用户一般不直接接触数据库,所以
我一直不太明白哪儿来那么多数据库方面的专家。但一般的数据库都需要比较复杂的管理
工作,比如我经常会帮别人重装数据库或恢复数据,所以,一般的数据库还是“管理者”的。
使用 CXDB 没有管理工作,不需要安装,CXDB 的所有数据被保存在一个操作系统文件中,
开发者指定文件路径就行了。
另外,会随 CXDB 附赠一个用户界面非常友好的图形化管理工具——CXDBManager。该工
具朴实而细腻,完全可以作为“开发期工具”使用。
1.4.学习型数据库
系统的作者长期从事数据库和数据结构教学,非常希望 CXDB 能够用于数据库学习。
CXDB 的 SQL 命令语法完全模仿 Oracle(做了一定的简化),执行效果也与 Oracle 几乎完
全相同。因此,在学习数据库的初始阶段使用本系统进行实践未尝不是一个好的选择 。
CXDBManager 是绿色软件,免安装,用它来做演示和实验都很方便。
1.5.中小型的数据库
对于数据库来说,“大型”和“小型”不是一个严格的概念。虽然经常有人这么说,但没有人来
做准确定义。但是,“大型”和“小型”又不仅仅是一个相对的概念,其差别不在于它们各自能
存储多少 T 的数据,“大型”需要复杂的体系结构支撑。
设计特性决定了 CXDB 不会成为一个 大型的数据库。尽管 CXDB 在外部特性上模仿
Oracle,但内部机制差别巨大。将 CXDB 设计为一个小型数据库,是我略有自知之明的表
现。但在 CXDB 的设计之中加入了很多高级特性,且为将来的扩充预留了空间,因此,如
果正常发展下去,CXDB 会成为一个“中型”数据库。
2. CXDB 的未来
现在的系统远不是 CXDB 的最终目标。
其实 CXDB 没有最终目标。虽然隐约地想过一些事,想想而已,没太想明白,更不想说出
来变成对自己的约束。但有些事是清楚的,是我最初设计时的打算,一定要做到。
为了节省时间,您可以跳过本章,先看后面的内容,反正还没实现呢。
2.1.实用的数据库
我从来都是做实用的系统,有没有人用另说,至少得让人家能用。不能把 CXDB 做成一个
演示系统,不能让选择 CXDB 的人后悔。系统目前已经做了初步的性能测试,特别是针对
大数据量和多线程进行了测试,可以说目前已初步可用。
事实上,系统已经在几个实际项目中得到了应用。
2.2.提供十进制的精度
有些小型数据库对数值数据仅提供整数、实数等类型支持。 CXDB 既然模仿了 Oracle 的
Number 类型,就得提供十进制的数据精度,保证能够存储商业数据。
2.3.自主的内存管理
现在 CXDB 仍然调用 malloc 来进行内存分配。由于数据库处理的数据类型与一般编程语言
(如 C 语言)所能表达的数据类型差距甚大,所以 CXDB 在运行的过程中经常需要动态地
申请内存。malloc 既不安全又费时,这一直是我的心病。将来 CXDB 一定要自主地管理内
存,关键是我“想”实现这一部分功能。
2.4.数据库服务器
CXDB 在设计上仅支持线程间的共享,不允许多个进程同时打开相同的数据库文件。这看
似限制,其实是为将来实现为一个数据库服务器做准备。
2.5.ODBC 接口
实现实用的 ODBC 接口,可对本地或远程的 CXDB 进行访问。既能提高编程的方便性,又
能扩大 CXDB 的适用范围,还省得为各类编程工具设计控件。
2.6.跨平台
系统用 C 语言实现,具备了跨平台的可能性。目前在 Windows 上实现,将来至少要移植到
Linux 上。
2.7.其它的
增强 LOB 字段的处理能力,触发器,PL/SQL 等。
数据库的开发是如此好玩儿,能想到的我都想做,但上述内容是必做的。
剩余12页未读,继续阅读
资源评论
zhangao_fengg
- 粉丝: 17
- 资源: 5万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功