asp加载access数据库并生成XML文件范例
作者:taoshaw 来源:经典论坛 发布时间:2008-07-22 12:41:00
标签:xml,asp,flash,access
简单asp加载access数据库,并生成XML,然后再将XML数据加载进LIST组件范例学习。
演示:
http://www.taoshaw.com/taoshaw/study/accessAndList/test.swf
XML演示:
http://www.taoshaw.com/taoshaw/study/accessAndList/xml.asp
首先来看,ASP读取ACCESS数据库。
<% @language="VBScript" @codepage="65001"%>
<%
'开启显式变量声明
Option Explicit
'设置输出类型
Response.contentType="text/xml"
'定义三个变量,conn(Connection对象)、connstr(ConnectionString)、sql(一个SQL语句)
dim conn,connstr,rs,sql,i
'定义ConnectionString的值
i=1
connstr="provider=Microsoft.Jet.OLEDB.4.0;data source="&Server.MapPath("test.mdb")&";"
'建立服务器连接对象
set conn=Server.CreateObject("ADODB.Connection")
'建立数据集对象
set rs=Server.CreateObject("ADODB.RecordSet")
'打开数据连接
conn.open connstr
'本句的意思是到word数据表内按id字段值的升序取出前100个song1name,dong1url字段的值。值被附加到数据集对象上被当作数据集的一个属性。
sql="select top 100 [song1name],[dong1url] from [test] order by id desc"
'游标类型和锁定类型都设置为1,这是一个只能向前的只读行为,读取速度最快
rs.open sql,conn,1,1
Response.Write("<?xml version='1.0' encoding='utf-8'?><淘沙网>")
'进行do while循环,条件循环到符合条件的最后一项
do while not rs.eof
'这是修改的部分,使输出的文件能够被Flash中的LoadVars对象识别。
Response.Write("<歌曲信息><歌名>"&rs("song1name")&"</歌名><地址>"&rs("dong1url"))&"</地址></歌曲信息>"
'记录下移
rs.movenext
i=i+1
'与do while呼应的loop方法,为主循环体
loop
Response.Write("</淘沙网>")
'将数据集对象关闭
rs.close
'将数据库连接关闭
conn.close
'释放数据集资源
set rs=nothing
'释放数据库连接资源
set conn=nothing
%>
这部分代码,就是读取数据库。
下面看看是如何生成XML的呢,其实,就是在输出的时候。加上XML的相应格式。比如<歌曲信息>,以及各个标签等。一定要注意,每个标签,一定要封闭。
这个xml.asp文件的全部代码如下:
下面,再看看,FLASH中如何加载的呢?
这里面,应该很简单了。
//定义组件
var my_TextArea:mx.controls.TextArea;
var my_List:mx.controls.List;
var my_XML:XML = new XML();
my_XML.load("http://www.taoshaw.com/taoshaw/study/accessAndList/xml.asp");
my_XML.onLoad = function(ok:Boolean) {
if (ok) {
for (i=0; i[td] my_List.addItem({label:this.firstChild.childNodes.childNodes[0].childNodes[0].nodeValue, data:this.firstChild.childNodes.childNodes[1].childNodes[0].nodeValue});
}
}
};
var my_Object:Object = new Object();
my_Object.change = function(eventObj:Object):Void {
my_TextArea.text += eventObj.target.selectedItem.label+"\n";
};
my_List.addEventListener("change", my_Object);
就这样,生成的XML文件就被导入进LIST里面了。通过监测函数,即可以调用数据。
学好这个,对于制作一些含后台的项目,比如相册、动态文章管理、播放器等就不难了。
制作一些需要加载外部文件的FLASH的时候,特别需要注意的是编码的问题。
首先,要注意,在同一个FLASH中,不要出现两次:“System.useCodepage=true”;
原本这句话的含义是将加载的外部非"Utf-8"格式的文件的编码转换成uft-8格式的,而如果使用两次,则一定会出错的。
一般的合作方法就是,外部文件保存的时候,要选择uft-8这种编码格式,或者Gb2312这种格式。至于这两种编码的详细区别,我目前还不太清楚,希望大家有明白的朋友,还指点一下在下。
0
投稿
猜你喜欢
- 不错,这个是一个文章详细页,没有左右两栏布局,不过这里我重点要讲的是合理的布局,在稍后的文章中我会详细的介绍浮动元素。好,回到刚才的话题,大
- 严格来说,Having并不需要一个子表,但没有子表的Having并没有实际意义。如果你只需要一个表,那么你可以用Where子句达到一切目的。
- 一、 软件介绍 DB2MYSQL是一个可以自动将ACCESS数据库文件转化为对应的SQL代码的软件。可广泛应用于ACCESS数据库转换为MY
- 阅读上一篇:什么是名字空间<meta http-equiv="Content-Type" co
- 在页面中自定义了changejs函数后页面提示错误:Active Server Pages 错误 'ASP 0138' 嵌套
- W3C(万维网联盟)日前发布了HTML 5公共草案,这是10年来对HTML的一次主要升级。据国外媒体报道,W3C HTML5草案于本周二发布
- YUI 中的 Grids CSS 主要有三个部分值得大家关注和学习:Yahoo!网站性能最佳体验的34条黄金守则—内容 1、布局的思想:使用
- 八卦为先八卦是种优良品质,特别是用在技术上时。来看几个Reset CSS的八卦问题吧:你知道世界上第一份reset.css在哪么?* { m
- 假如你拥有一个庞大的网站,内容又多,那么来访者往往很难找到自己所需要的东东,这时候你就需要一个站内搜索来帮助来访者更快的找到索要的资料了!现
- 当管理SQL Server内在的帐户和密码时,我们很容易认为这一切都相当的安全。但实际上并非如此。在这里,我们列出了一些对于SQL Serv
- 元素是文档结构的基础,在CSS中,每个元素生成了一个包含了元素内容的框(box,也译为“盒子”)。但是不同的元素显示的方式会有所不同,例如&
- MS SQL Server 2000通过企业管理器设置数据库的定期自动备份计划。1、打开企业管理器,双击打开你的服务器2、然后点上面菜单中的
- SQL> show all --查看所有68个系统变量值 SQL> show user --显示当前连接用户 SQL> s
- 本文探讨了提高MySQL数据库性能的思路,并从8个方面给出了具体的解决方法。1、选取最适用的字段属性MySQL可以很好的支持大数据量的存取,
- CSS写法:overflow-y:visible本代码适用平台:IE6,IE7演示:<textarea style="wid
- ctrl+Enter:重建ctrl+0:相当于点击当前行左方的加号或减号ctrl+E:打开新窗口预览ctrl+T:替换\t为两个空格tab:
- 你还没用 jQuery 写过导航菜单? 相信看到这些出色的jQuery导航菜单后,一定会为此而后悔没早点把 jQuery 应用到自己的Web
- 这些包可以独立使用,也可以与其他包一起使用以满足复杂的业务需求。Integration Services 可以提取和转换来自多种源(如 XM
- 之前在一个web系统的设计中,和另一个设计师讨论,“保存”和“取消”按钮该怎么设计。我的观点是,保存是比取消更常用的按钮,也是用户的主要目的
- 当然还是要使用FileSystemObject(FSO)来创建了。不过在创建前,要先检查以下目录是否存在,如果存在,就不用创建了: