Access
MySQL是当前最流行的网络数据库,其中的原因包括:
运行速度快
免费
能运行在Linux及其他的一些平台
能与Apache(一种流行的网络服务器)完美结合
能与 PHP完美结合
MySQL具有一个ODBC接口。如果你操作的是网络服务器或MySQL服务器,并想把数据关联到桌面应用程序,采用ODBC接口是一个很好的方式。但如果你不是对服务器操作,访问MySQL的端口很有可能无效,此时只能寻求其他方法来操作你的数据。
存在的问题
所提及的问题都是针对客户机而言的。出于安全起见,客户机程序一般都通过一个主机选择网络代表,从而避免在网络上频繁地登录自己的系统。许多主机都能提供合适的条件和MySQL,可扩展的FrontPage,CGI及其他站点制作工具。它们也能满足硬件和软件的匹配问题。这一独特的主机甚至能提供各种工具帮助你增加或删除你的MySQL数据库,但是它只以基本的MySQL存放处格式进行,这就不能够直接地读入Access或其他的桌面程序。
客户机程序不想在自己单位上的服务机安装MySQL,可以通过我的程序来传递数据,只要在我的机器上运行MySQL。我可以人工地通过主机存放处获取数据。这一过程包括把数据加载到数据库,并通过ODBC传送到Access,然后向客户机发送数据库内容。我并不介意所完成的这些工作,但是我们应该简化一些不必要的工作而不要过多地依赖于人工操作。
让我再说明一下以上的过程。首先主机在网页上显示数据存放处,通过简单的代码和注册我获取了数据库的数据,注册之原因是出于安全考虑。现在,我采用微软的网页浏览器ActiveX控件直接操作Access数据库,这就允许用户很容易地通过注册过程,点击按钮即可获取MySQL数据,然后把数据传递到Access数据库的相应表中。只要数据是在Access数据库中,用户就可以用ODBC或他们惯用的方法把数据传递到ERP系统或其他专用系统。
Microsoft Access数据库
Access数据库相当简单,它是由一些数据表组成,数据表列举你要添加的数据。在这一节里,我采用的数据表名为Sales_Data,是由一个虚拟网站上的购车数据组成。同样,这一数据表应和主机上的MySQL数据表无论在名字,还是结构上都要完全一样。事实上,我们首先要在Access(图A)中生成一个数据表,然后通过ODBC把数据转移到当地服务器的MySQL上。
Figure A
Access应用程序打开的同时也打开了网页控制面板窗体。在我的例程中,程序在我的服务器上通过了PHP注册。
Figure B
采用的ActiveX控件名为WebBrowser1,执行的代码如下:
Private Sub Form_Load()
WebBrowser1.Navigate2 http://192.168.192.1/~stew/mysql/
End Sub
Figure C
MySQL screen shot
窗体中其他部分包括有两个按钮,第一个按钮(弹出控制面板)通过下面的代码显示MySQL的屏幕(如图C):
Private Sub LoadControlPanel_Click()
WebBrowser1.Navigate2 http://192.168.192.1/~stew/mysql/mysql_dump.php
End Sub
第二个按钮获取数据,这是代码中的主要部分。
接着,你将会看到Access数据库的一个下拉式列表,并且这一列表中已经有数据。在这一例子中,列表名为Sales_Data。
再者,复选框会让选择在添加数据之前是否删除旧的数据,你可以在这里做一些有用的操作,但这些操作必须是合法的。
最后,两个文本接口包含了单位名称以及MySQL数据库名称。
总结
以上就是过程的全部。用户必须通过网络接口来运行主机上的数据库查询。当MySQL存放处显示在窗体浏览器上(如图D),点击获取数据按钮就可以获取数据并存放在Access数据表中。程序也会检测数据存放处是否是基于一定格式的MySQL,并确保是正确的数据库和数据表。如果这些规则满足,就会执行程序中的INSERT命令把数据添加到目标数据表,此时会弹出一个消息对话框以显示这一过程。如果有错误产生则返回到窗体。Listing A包含了完整的代码。
Figure D
MySQL screen dump
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn