用java写的MyDB数据库管理器演示程序

一、介绍
  MyDB是我在2009年12月底开始动手写作的,是一个纯java写的数据库管理器,目前只是一个实现基本功能的演示性框架,用来验证功能的可实现性。

  整个应用包括三个部分,数据库服务器,数据库客户端,数据库驱动。目前这三部分已经都实现,但功能还不完整。

  运行目录下的脚本,可以启动相应程序:
 启动服务器:
  server.bat
  相应命令:java -classpath ./lib/mydb.jar;./lib/antlr-3.2.jar;./lib/commons-beanutils.jar;./lib/commons-collections.jar;./lib/commons-digester.jar;./lib/commons-pool.jar;./lib/metouia.jar;./lib/QSAdminGUI.jar;./lib/QuickServer.jar lions.mydb.server.Server

 启动客户端:
  client.bat
  相应命令:java -classpath ./lib/mydb.jar;./lib/antlr-3.2.jar lions.mydb.client.Client

 驱动:
  使用方法:
   Class.forName("lions.mydb.jdbc.Driver");
   Connection conn = DriverManager.getConnection(
     "jdbc:mydb://localhost:3305/test", "", "");
   Statement stmt = conn.createStatement();
   //ResultSet rs = stmt.executeQuery("select * from test");
 

  目前实现了以下几条基本指令:

 create database <databasename>
 
 use <databasename>

 drop database <databasename>

 show databases

 create table <tablename>

 drop table <tablename>

 show tables

 select * from <tablename>

 insert into <tablename> (<fieldname>) values(<value>)

 delete from <tablename>

由于sql的完整规范比较复杂,要实现它需要日后不断地添加。目前感觉sql经常用到的也就几条,所以有想法对sql进行精减,只实现最常用的那几条,

同时增加一些方便日常操作的指令。

  整个MyDB的开发时间都是我利用晚上22点到2点之间,以及周末的空余时间来进行的,因此进展缓慢,且效率不高。

  计划在3年内将其实现完整,可以应用于实际生产环境。


  MyDB采用的是纯java的技术实现,网络通讯部分,服务器使用了QuickServer框架,驱动使用的是常规的Socket技术,使用了antlr来解析sql语句,

数据库的业务处理部分是我自己写的,为了实现日后的功能,还需要做一定的细节调整。

 


二、版权声明


MyDB是本人在2009年底开始独立开发的应用,纯粹使用了自己投资的硬件,以及利用了自己的业余时间来进行开发的,本人拥有独立的全部的所有权,

除使用到的部分开源组件外,本人对MyDB保留所有权利,与其他公司无关,即使有功能相同的程序,也是本人独立实现的不同代码。其中使用到的组件

有:QuickServer, antlr。

任何人不得对MyDB进行反编译等逆向工程。

任何人不得将MyDB应用到未经允许的环境。

 

三、免责声明

MyDB目前功能还不完整,只提供用于研究,对于在应用中出现的任何问题,本人不承担任何责任。

 

2010年2月7日
瞿正峰

 

上海

 

 

下载地址:

 

http://download.csdn.net/source/2059340

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值