通过Access从Web获取MySQL数据

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

时间: 2024-09-07 18:06:00

通过Access从Web获取MySQL数据的相关文章

c#datagridview获取mysql数据并且修改添加删除

问题描述 RT这个帖子貌似和一个帖子一样都是mysql操作的我想要的是如何在datagridview中修改数据的时候就能把修改的数据上传到mysql实现在线修改的功能 解决方案 解决方案二:就是修改的时候同时更新到数据库?解决方案三:1楼是的就是修改完成的时候就上传

PHP获取mysql数据表的字段名称和详细信息的方法_php技巧

首先我们需要了解下查询MySQL数据库/表相关信息的SQL语句: 复制代码 代码如下: SHOW DATABASES                                //列出 MySQL Server 数据库. SHOW TABLES [FROM db_name]                    //列出数据库数据表. SHOW CREATE TABLES tbl_name                    //导出数据表结构. SHOW TABLE STATUS [FR

mysql数据复制到access数据库

access|mysql|数据|数据库 mysql数据库表sqltable 字段id,name,sex,email access数据库表accesstable id,name,sex,email <?      $connect = mysql_connect("localhost","","");      mysql_select_db("mydatabase");      $sql = "select

《R语言数据分析》——第2章 从Web获取数据 2.1 从Internet导入数据集

本节书摘来自华章出版社<R语言数据分析>一书中的第2章,第2.1节,作者盖尔盖伊·道罗齐(Gergely Daróczi),潘怡 译,更多章节内容可以访问"华章计算机"公众号查看. 第2章 从Web获取数据 实际项目中,经常会碰见所需数据不能从本地数据库或硬盘中获取而需要通过Internet获得的情况.此时,可以要求公司的IT部门或数据工程师按照下图所示的流程将原有的数据仓库扩展,从网络获取处理所需要的数据再倒入公司自己的数据库: 如果公司还没有建立ETL系统(抽取.转换装

mysql insert语句后如何获取insert数据的主键值自动编号

关于mysql教程 insert语句后如何获取insert数据的主键值自动编号呢, 方法很简单的,mysql数据自带的了mysql_insert_id ( );函数 使用方法: insert into(a')values('b') $nid = mysql_insert_id ( ); 方法二: LAST_INSERT_ID(),不过关于这个函数,与mysql_insert_id()比较有很多的区别,mysql_insert_id ()是直接获取当前session的insert_id,而LAST

asp通过web service获取数据库数据 然后显示在页面上

问题描述 是在一个ASP.NET项目中,有一个webservices接口用来获取数据的,需要做登录,登录之后是在一个页面上显示用户的详细资料,所有的数据都是通过webservices来获取数据库数据的.请问怎么实现 解决方案 解决方案二:这问题问的好啊就是调用webservice取得用户信息,然后用js王页面上放呗解决方案三:引用1楼thedolphin的回复: 这问题问的好啊就是调用webservice取得用户信息,然后用js王页面上放呗 我知道可以用JS来调用webservice但是具体是怎

用ajax获取的数据,然后拼成html的class问题。

问题描述 用ajax获取的数据,然后拼成html的class问题. 用ajax获取的数据,然后拼成html的class,为什么页面中再对其进行的js操作没有用,是因为在页面加载前就已经进行了吗?请问要怎样进行操作.谢谢! 解决方案 1.如果你用的是jQuery,可以用$(元素ID或者Class).on(事件, function(){});来动态绑定事件: 2.如果用的原生态JavaScript操作的,建议直接定义你需要的操作的function,绑定到标签上: 解决方案二: $('#content

使用XMLHTTP Request Object获取服务器数据

object|request|xml|服务器|数据   在Web客户端使用xmlhttp对象,可以十分方便的和服务器交换数据,我们可以获取和发送任何类型的数据,甚至二进制数据到服务器上.xmlhttp技术同时也是目前大多数无刷新页面使用的和服务器交换数据的方式,这种方式比以往的隐藏iframe的方法要方便和经济的多.     同时让我们高兴得是xmlhttp并不是IE特有的东西,虽然目前还不是W3C的标准,不过IE, Netscape/Mozilla, 和Safari都支持.在IE中我们使用ne

mysql数据据存储引擎InnoDB和MyISAM的优势及区别

MyISAM:这个是默认类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法.与其他存储引擎比较,MyISAM具有检查和修复表格的大多数工具. MyISAM表格可以被压缩,而且它们支持全文搜索.它们不是事务安全的,而且也不支持外键.如果事物回滚将造成不完全回滚,不具有原子性.如果执行大量的SELECT,MyISAM是更好的选择. InnoDB:这种类型是事务安全的.它与BDB类