用delphi解决MySQL数据库中无图形界面的问题

来源:互联网 发布:alphago情感算法 编辑:程序博客网 时间:2024/05/20 07:17

问题提出

MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。对Unix和 OS/2 平台,MySQL基本上是免费的。另外,MySQL是一个真正的多用户、多线程SQL数据库服务器。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。尽管MySQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。

MySQL 主要目标是快速、健壮和易用。我们要选择一个SQL服务器,因为它能处理在任何不昂贵的硬件平台上的大型数据库,速度也很快,MySQ自1996年以来,目前在使用MySQL数据库的网站,在一半以上,其环境有超过 40 个数据库,包含 10,000个表,其中500多个表超过7百万行,这大约有100 个吉字节(GB)。

但是,在开发MySQL 数据库时,由于MySQL的所有表和用户的创建都是用sql语言来建立的。自带的winMySQLadmin只能查看数据库而不能进行编辑修改,要进行操作,只能用sql来实现,要求用户对MySQL的语法相当熟悉。对于一个刚开始使用sql的用户来说,无疑增加了许多障碍,对于以后的维护,也非常不便。其它也有一些工具,但功能不完备,运行效果也不理想。如果应用开发人员能够将MySQL的功能能够用Delphi 来实现,将业务要求设计出图型化界面,并将它实现,就像那些大型数据库如Oracle的dba studio那样。MySQL将会锦上添花。这个系统就是一个非常受欢迎的系统,解决了MySQL的维护无图形界面的问题。

 实现方案

根据对业务支撑和网络管理迫切需求,决定给MySQL开发出图形管理得工具,我们对一些方案进行了认真考察。

(1)使用MySQL提供的api函数库。很多有名的MySQL客户端工具就是这样实现的,大名鼎鼎的winMySQL工具就是这样的。这在大部分的开发工具中都可以实现。比如vc,Delphi,vb等,只要能调用第三方的api就能实现。但对程序员的要求很高,而且要熟悉一套MySQL的api函数集,这不是对每个人都很轻松的事。而且这种方法不能用于asp等程序,因为它不支持com对象。

    (2)使用Myodbc驱动程序。可以到www.MySQL.com下载myodbc驱动程序,这是MySQL专门为可视化开发工具提供的数据库接口。方法是下载完全安装包下载后直接安装。或者将只是将动态连接库注册即可,方法为将安装包解开,将myodbc.dll 文件放到windows\system 或 winnt\system32目录下,这取决于你的系统是win9x还是winnt(win2k)。然后打开一纯文本编辑器,如editplus,notpad之类,将下面一段话保存为注册表文件并运行。

Windows Registry Editor Version 4.00

如果你用的是win2k请换成 Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\myodbc driver]

"UsageCount"=dword:00000002

"Driver"="C:\\WINNT\\System32\\myodbc.dll"

"Setup"="C:\\WINNT\\System32\\myodbc.dll"

"SQLLevel"="1"

"FileUsage"="0"

"DriverODBCVer"="02.50"

"ConnectFunctions"="YYY"

"APILevel"="1"

"CpTimeout"="120"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers]

"myodbc driver"="installed"

对于图形化用开发工具。我们选用了目前非常流行delphi 这种优秀的软件来开发对MySQL的用户和表格的管理。Delphi作为RAD工具,以其快速编译和友好的可视化界面受到广泛欢迎。最重要的是,Delphi提供了很多现成控件。另外还可以买到第三方开发的特色控件,或从因特网下载免费控件。这些控件足以支持一般应用系统开发。

主要功能

功能结构图为:

1.  数据库的管理

数据库的管理包括数据库的新建、数据库的删除、数据库的备份、数据库的恢复。

2.  用户的管理,主要为用户的增加,用户的删除。用户口令的维护,以日志的管理等。

3.  表的管理

a.  表的新建

b.  表的删除

c.  表字典的管理

d.  表结构的修改

e.  表结构的复制

f.  纪录的清空

g.  纪录的增加、删除

4.  MySQL数据库sql代码生成器

内容包括从表中选择纪录,选择字段,表建立。增加删除、表的关联等的sql语句,也可以直接执行代码。

注意事项

在这套方案统中,需要对MySQL服务器的整体运行状况、重要进程的运行状态、系统和用户日志的记录情况进行监控。例如,在Delphi和MySQL都对表进行操作时,经常会出现表被锁定的现象,需要进行控制处理。要使该方案实施,开发人员一定要对系统开发做好系统分析设计的具体工作,对一些以外情况进行特殊处理。对这些情况的考虑,不但解除了在开发时引起的不必要麻烦,也有力地保障了信息安全体系的正常运行,达到良好的运行效果。


原创粉丝点击