|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
减少客户内IT专业人才缺乏带来的影响。ASP的客户员工利用浏览器进入相关的应用软件,简单易用,无需专业技术支持。之前看到良多网友问,本人有两台服务器,怎样这两台服务器上的mdb数据库数据的互访。明天作了个远程的接口,以xml情势前往mdb中的数据。用的次要头脑是经由过程recordset工具的save办法将数据添补到一个xmldom里,可是,这类办法发生的XML不敷简便,主动发生的XML包括了schema信息,它形貌这个XML里同意有甚么节点和属性和接纳何种数据范例,并且数据节点也增添了称号空间。schema信息在必要数据考证的中央或举行更庞大的处置也许很有效,可是,年夜多半情形下,我们利用的是瘦客户机,我们不必要schema信息。我们能够使用XSLT来分别出我们想要的信息,往失落过剩的信息。代码以下:
<%
天生xsl款式
str=chr(13)&chr(10)&chr(9)
xslt="<?xmlversion=""1.0""?>"&chr(13)&chr(10)&"<xsl:stylesheetversion=""1.0"""_
&"xmlns:xsl=""http://www.w3.org/1999/XSL/Transform"""_
&"xmlns:s=""uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882"""_
&"xmlns:dt=""uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"""_
&"xmlns:rs=""urn:schemas-microsoft-com:rowset"""_
&"xmlns:z=""#RowsetSchema"">"&str_
&"<xsl:outputomit-xml-declaration=""yes""/>"&str_
&"<xsl:templatematch=""/"">"&str&chr(9)_
&"<xsl:elementname=""xml"">"&str&chr(9)&chr(9)_
&"<xsl:for-eachselect=""/xml/rs:data/z:row"">"&str&chr(9)&chr(9)&chr(9)_
&"<xsl:elementname=""row"">"&str&chr(9)&chr(9)&chr(9)&chr(9)_
&"<xsl:for-eachselect=""@*"">"&str&chr(9)&chr(9)&chr(9)&chr(9)&chr(9)_
&"<xsl:elementname=""{name()}"">"&str&chr(9)&chr(9)&chr(9)&chr(9)&chr(9)&chr(9)_
&"<xsl:value-ofselect="".""/>"&str&chr(9)&chr(9)&chr(9)&chr(9)&chr(9)_
&"</xsl:element>"&str&chr(9)&chr(9)&chr(9)&chr(9)_
&"</xsl:for-each>"&str&chr(9)&chr(9)&chr(9)_
&"</xsl:element>"&str&chr(9)&chr(9)_
&"</xsl:for-each>"&str&chr(9)_
&"</xsl:element>"&str_
&"</xsl:template>"&chr(13)&chr(10)_
&"</xsl:stylesheet>"
读取数据库
curDir=Server.MapPath("data.mdb")
setconn=server.createobject("adodb.connection")
conn.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&curDir
setrs=conn.Execute("select*fromadmins")
DimobjXMLDOM
SetobjXMLDOM=Server.CreateObject("MSXML2.DOMDocument.3.0")
将recordset工具保留到dom里
rs.saveobjXMLDOM,1
Setrs=Nothing
DimstrCleanXML,objXMLDOM_XSLT
SetobjXMLDOM_XSLT=CreateObject("MSXML2.DOMDocument")
objXMLDOM_XSLT.loadXml(xslt)
用xsl格局化数据
strCleanXML=objXMLDOM.transformNode(objXMLDOM_XSLT)
SetobjXMLDOM=Nothing
SetobjXMLDOM_XSLT=Nothing
输入数据
Response.WritestrCleanXML
%>
由于xml是跨平台的,以是呢不管是asp仍是jsp大概客户端都能够经由过程该接口取得数据,然后用本人的款式来显现数据。好比,在客户端我们可使用javascript操纵xmlhttp来取得www.xxxx.com上某个mdb的数据:
<scriptlanguage="javascript">
functionreq(){
varxmlhttp=newActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("GET","http://www.xxxx.com/mdb_inerface.asp",false);
mdb_interface.asp既为放在www.xxxx.com上的mdb接口文件
xmlhttp.Send();
alert(xmlhttp.responseText);
}
</script>
</HEAD>
<body>
<inputtype="button"value="获取"/></br>
SQLServer是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。 |
|