用ASP+ACCESS怎么实现在同一页面读取同一个数据库的两个或多个表

问题同上,网上的我看了很多,都说可以实现,但是我不知道具体的操作步骤是什么?我的数据库名为user.里面的表分别是news和news1 字段名是id title title2

1.任意新建或找一个Access数据库文件data.mdb,这里我新建了一个data.mdb,这里有两个表User和Class。表结构如下图

2.任意新建一个test.aspx测试页面,复制下面的内容:

 

        protected void Page_Load(object sender, EventArgs e)

        {

            // access连接字符串可以把路径当做变量

            string sConnStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Administrator\Desktop\WebApplication2\WebApplication2\TempFile\data.mdb;Persist Security Info=False";

            // 数据源连接对象

            OleDbConnection con = new OleDbConnection(sConnStr);

            con.Open();

            DataTable dt = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });

            con.Close();

            con.Dispose();

 

            // 遍历所有的表

            string sName = "";

            for (int i = 0, maxI = dt.Rows.Count; i < maxI; i++)

            {

                // 获取第i个Access数据库中的表名

                string sTempTableName = dt.Rows[i]["TABLE_NAME"].ToString();

                sName += string.Format("{0}\n", sTempTableName);

            }

 

            Response.Write(sName);

 

        }

3.浏览页面,页面中会输出表的名称,如下图,不过从输出的表名称可以看出,以【~】开头的表名,都不是真正的表,因此需要过滤掉这些表。


4.Access数据库文件的路径,可以当做一个变量,如果是处理客户端上传的文件,可以先保存到服务器上,然后获取Access数据库连接字符串。

5.获取到了表名称,可以使用select * from tableName,查出来DataTable数据,最后把Access数据库中所有表名和表数据添加到DataSet对象中。

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-09-29
如图,在IIS中所在站点或虚拟目录查看属性 --主目录-配置--选项中,将启用父路径的选择框选中即可。
第2个回答  2011-09-15
同一页面肯定可以读取同一数据库的多个表的,这分几种情况:
1、顺序调用多个表(即打开一个表用完后关闭再打开下一个表):
set rs1=server.createobject("adodb.recordset")
rs1.open "select * from news",conn,1,1
do until rs1.eof
'这里显示news表的内容
rs1.movenext
loop
rs1.close
rs1.open "select * from news1",conn,1,1
do until rs1.eof
'这里显示news1表的内容
rs1.movenext
loop
rs1.close
set rs1=nothing

2、同时打开多个表(用不同的记录集对象同时打开多个表):
set rs1=server.createobject("adodb.recordset")
set rs2=server.createobject("adodb.recordset")
rs1.open "select * from news",conn,1,1
do until rs1.eof
rs2.open "select * from news1 where id=" & rs1("id"),conn,1,1
'这里显示news1表中与news表相关的内容
rs2.close
rs1.movenext
loop
rs1.close
set rs2=nothing
set rs1=nothing

3、在同一sql查询中打开多个表(效率稍微高些,但要求多个表之间要有关联字段):
set rs1=server.createobject("adodb.recordset")
rs1.open "select * from news,news1 where news.id=news1.id",conn,1,1
'后面的具体用法我就不写了,可以用rs1("news.title")和rs1("news1.title")来区分不同表的字段本回答被提问者采纳
第3个回答  2011-09-18
set rs1=server.createobject("adodb.recordset")
rs1.open "select * from news",conn,1,1
do until rs1.eof

用ASP+ACCESS怎么实现在同一页面读取同一个数据库的两个或多个表
1.任意新建或找一个Access数据库文件data.mdb,这里我新建了一个data.mdb,这里有两个表User和Class。表结构如下图 2.任意新建一个test.aspx测试页面,复制下面的内容:protected void Page_Load(object sender, EventArgs e){ \/\/ access连接字符串可以把路径当做变量 string sConnStr = @"Provider=M...

ASP+access,如何能同时打开数据库中的两个表 表1:manage,表2:detail
建两个recordset对象rs1,rs2,分别open取数就行了,用完要记得close。--- dim cn set cn=server.createobject("ADODB.CONNECTION")cn.open "你的连接字串"dim rs1,rs2 set rs1 = Server.CreateObject("ADODB.Recordset")set rs2 = Server.CreateObject("ADODB.Recordset")rs1.open "Select语句1...

ASP如何调用ACCESS中一个表两个不同的字段。这两个字段分别代表的不同...
myrs.Open sqlstr,conn,1,1 myrs("username")myrs("title")username,title 就是你想调用的字段名

如何用ASP在一个页面中调用整个access数据库
通过openSchema把数据库中所有表读出来,然后再进行接下来的工作,我把前面的代码写给你,后面的你自己写吧。'conn这个数据库连接你应该有的啦 set rs=conn.openSchema(20) '具体的看书查查其他参数,不过读表在ASP里面就是20 rs.movefirst do while not rs.eof if rs("TABLE_TYPE")="TABLE" th...

在站内查询中,如何实现ASP同时在多个数据库\/数据表中查询呀?
1、新那一个MS Access数据库,打开(保证里面有多个表),打开后将看到“对象”里的“表”。2、点击“对象”里的“查询”,再点击“新建”,选择“设计视图”--“确定”。3、在“显示表”窗口中选择你要查询的“表”--“添加”,可以添加多个。4、在视图里建立查询关系。5、你要的是查询语句吧...

ASP:对ACCESS数据库里的两张表进行同步更新内容
set rs=server.CreateObject("adodb.recordset")rs.Open "select * from news where id="&id,conn,1,3 rs("content")=trim(request.form("content"))rs.Update rs.Close set rs=nothing set rss=server.CreateObject("adodb.recordset")rss.Open "select * from article where id="&id,conn,...

[ASP]请教如何在同一页显示两个表的内容??
on error resume next connstr="DBQ="+server.mappath(db)+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"set conn=server.createobject("ADODB.CONNECTION")conn.open connstr > 招聘系统 === 调用第一个 < set rs=server.createobject("ADODB.Recordset")sql="select*from j...

简单的asp加access读取数据库怎么做?
在数据库中可以选择如何去创建表!思路:1.做一个注册页面,包含一个表单。表单中两个文本框用来输入用户名密码 2.一个注册验证页面。用来判断用户名是否存在,并将注册信息写入表 我的注册页面和asp处理页面是分开的分两个文件reg.asp 和 zhuceyanzheng.asp 以下代码是reg.asp 文件的代码 function...

如何将一个库内的两个表合并,用asp,access数据库
select distinct s.sn,xinghao,addtime,name,mima into tbtemp1 from sn s,[info] where s.sn=info.sn select info.sn,'未知' as xinghao,'未知' as addtime,name,mima into tbtemp2 from sn s,info where sn not in (select sn from sn)drop table sn select * into sn from tbtemp1,...

ASP如何实现一个页面打开两个不同路径的数据库?
mdb"set conn1 = server.CreateObject("ADODB.Connection")connstr1="DBQ="&server.mappath(db1)&";DRIVER={Microsoft Access Driver (*.mdb)};"conn1.Open connstr1 > 把这两段代码,放到一个页面,然后再把数据库名字改一下,就可以打开两个数据库了,,就可以对两个数据库进行操作。

相似回答