首页 > 数据库 > MySQL > 正文

通过Access从Web获取MySQL数据

2024-07-24 12:55:32
字体:
来源:转载
供稿:网友
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
,欢迎访问网页设计爱好者web开发。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表