打印

[交流] 多服务器间的数据同步更新方法[ACCESS]

0

多服务器间的数据同步更新方法[ACCESS]

如何远程调用ACCESS数据库]

使用了TCP/IP,ADO及XML(需要安装Microsoft XML
4.0。)。分服务器和客户端两部分,服务器可以多用户同时连接。远程连接Access数据库有很多方法,我以前已经比较详细的
回答过(见下面所列的5种方法),我现在这个例子属于其中的第3种方法(不需要使用RDS或Web服务器)。


  -------------------------------------

  远程连接access数据库的几个方法:


  1.建立VPN(Virtual Private
Network),这样你的电脑和主机的连接就与局域网无异,然后把服务器中mdb文件所在的Folder共享即可。ADO连接 如下:


  oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=\\ServerName\DatabaseFolder\Database.mdb;Jet OLEDB500){this.resized=true;this.style.width=500;}"
align=absMiddle>atabase Password=databasepw;Persist Security Info=False"


  2.把Database放在Web Server上,使ADO或RDO通过RDS(Remote Data Service)及IIS来实现:


  如果服务器像上面Jave大侠说那样设置了ODBC DSN的话:

  oConn.Open "Provider=MS
Remote;" & _

  "Remote Server=http://myServerName;" & _


  "Remote Provider=MSDASQL;" & _

  "DSN=AdvWorks;" & _


  "Uid=myUsername;" & _

  "Pwd=myPassword"



  如果设置的是OLE DB Provider 的话:

  oConn.Open "Provider=MS
Remote;" & _

  "Remote Server=http://myServerName;" & _


  "Remote Provider=Microsoft.Jet.OLEDB.4.0;" & _

  "Data
Source=c:\somepath\mydb.mdb", _

  "admin", ""


  3.自己编写服务器程序,通过TCP/IP,传递Recordset。

  4.使用第三方控件,如:ADO
Anywhere或UDAParts RDB等。具体查看

  http://www.adoanywhere.com


  http://www.udaparts.com/

  5.使用XMLHTTP


  --------------------------------------

  附 远程连接SQL Server的方法:


  ConnStr = "Provider=SQLOLEDB.1;Network Library=DBMSSOCN;Persist
Security Info=True;User ID=UserName;Password=Password;Initial
Catalog=远程数据库名;Data Source=203.129.92.1"

远程调用ACCESS数据库的源代码

下边的代码适合于所有ACCESS数据库的调用。
把下边的代码保存成一个ASP文件,如NEWS.ASP
data/news.mdb是数据库的目录路径和数据库的名字
top
15是在首页显示15条的意思
From news 是打开NEWS数据库的意思,NEWS是数据库的表的名字
& rs_news("url")
&是鼠标点击显示出来的标题的URL
& rs_news("name") &
是让首页显示的标题的字段,要想显示数据库里的哪个字段,就调用哪个

首页调用格式如下:
news.asp的路径邀写对才行
<script
language=javascript
src="http://www.myboker.com/news.asp"></script>


<%
Set
conn = Server.CreateObject("ADODB.Connection")
DBPath =
Server.MapPath("data/news.mdb")

conn.Open "driver={Microsoft Access
Driver (*.mdb)};dbq=" & DBPath
sql_news="Select top 15 * From news Order
By id DESC"

set rs_news=conn.execute(sql_news)
if not rs_news.eof
then
rs_news.movefirst
dis_mes=dis_mes & "<tr><td
valign=top>"
do while not rs_news.eof
dis_mes=dis_mes
&"<li><a href=" & rs_news("url") & " target=_blank>"
& rs_news("name") &
"</a><br>"
rs_news.movenext
loop
dis_mes=dis_mes &
"</td></tr>"
end
if
rs_news.close
dis_mes="document.write(""" & dis_mes &
""");"
response.write dis_mes
%>

TOP

当前时区 GMT+8, 现在时间是 2025-3-13 06:46