| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 715 人关注过本帖
标题:这个问题我也说不明白,大家进来看看
只看楼主 加入收藏
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
 问题点数:0 回复次数:14 
这个问题我也说不明白,大家进来看看
<%
    Set conn = Server.CreateObject("ADODB.Connection")
 ConnStr = "Provider = Sqloledb; User ID = sa; Password = ijL; Initial Catalog = fingerdb; Data Source = (local);"
 Conn.Open ConnStr          '########打开数据库
    Set Rs=server.createobject("adodb.recordset")
    Set Rs1=server.createobject("adodb.recordset")
%>
<table border="1" width="986" id="table1">
 <tr>
  <td width="162">身份证号码</td>
  <td width="97">姓名</td>
  <td width="703">工作单位</td>
 </tr>
<%  
    sql1="select sbh,xm,gzdw from ryxxb"'此表内三个字段为sbh:身份证号xm:姓名gzdw:工作单位gzdw为数字单位编码,对应ab01的aab001
    Rs.Open sql1, Conn,1,1
    sql2="select * from ab01"'此表内有204行数据,两个字段,aab001和aab004,aab001为数字单位编码,对应gzdw,aab004为工作单位数据
    Rs1.Open sql2, Conn,1,1
    i=0
    do while x< 200
    for i =1 to rs1.RecordCount '从1开始循环直到记录结束
     if rs1("aab001")=rs("gzdw") then
     yyy=Rs1("aab004")
     end if
     Rs1.movenext
     next
%>
 <tr>
  <td width="162"><%=rs("sbh")%></td>
  <td width="97"><%=rs("xm")%></td>
     <td width="703"><%=yyy%></td>
 </tr>
<%   
    x=x+1
 Rs.movenext
    Rs1.movefirst
 Loop
%>
</table>
这段代码就是将ryxxb中的gzdw的数据编码换成ab01里的工作单位数据,哪位朋友能帮忙优化一下代码,当X=200里循环就很费劲,如果2000条就更能想象了,我初学,不知道该怎么做,请帮我一下
搜索更多相关主题的帖子: 数据库 身份证号码 border local 
2005-08-31 09:41
islet
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:89
帖 子:6548
专家分:0
注 册:2005-1-28
收藏
得分:0 
<%
    Set conn = Server.CreateObject("ADODB.Connection")
ConnStr = "Provider = Sqloledb; User ID = sa; Password = ijL; Initial Catalog = fingerdb; Data Source = (local);"
Conn.Open ConnStr          '########打开数据库
    Set Rs=server.createobject("adodb.recordset")
%>
<table border="1" width="986" id="table1">
<tr>
  <td width="162">身份证号码</td>
  <td width="97">姓名</td>
  <td width="703">工作单位</td>
</tr>
<%  
    sql="select a.sbh,a.xm,b.gzdw from ryxxb a,ab01 b where a.gzdw=b.aab001 order by a.sbh"'
    Rs.Open sql1, Conn,1,1
    x=0
    do while x< 200
%>
<tr>
  <td width="162"><%=rs(0)%></td>
  <td width="97"><%=rs(1)%></td>
     <td width="703"><%=rs(2)%></td>
</tr>
<%   
    x=x+1
Rs.movenext
Loop
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
</table>

你试试
2005-08-31 09:55
islet
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:89
帖 子:6548
专家分:0
注 册:2005-1-28
收藏
得分:0 
    do while x< 200改成    do while not rs.eof
    x=x+1 去掉

你再试试速度
2005-08-31 10:06
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
sql="select ryxxb.sbh,ryxxb.xm,ryxxb.gzdw from ryxxb,ab01 b where ryxxb.gzdw=ab01.aab001 order by ryxxb.sbh"' 红色部分是什么意思,怎么写
2005-08-31 10:18
islet
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:89
帖 子:6548
专家分:0
注 册:2005-1-28
收藏
得分:0 
ab01 b用b来代替ab01 你总写ab01不感到很麻烦 少写点是不是就省力气
2005-08-31 10:25
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
这种情况是ryxxb里的GZDW需要转换,如果再有一个字段需要转换呢?
2005-08-31 10:27
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
运行结果工作单位字段的编码没有被转换啊
2005-08-31 10:30
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
http://www.fscz.info/ 这是地址,你可以点一下看看
2005-08-31 10:32
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
http://www.fscz.info/index1.asp 这是我发贴时的代码
2005-08-31 10:35
bsijl
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-8-30
收藏
得分:0 
OK已经解决!但是还有个问题就是我刚才提到的,这是一个字段需要转换,如果有两个以上的字段需要转换呢?
2005-08-31 10:47
快速回复:这个问题我也说不明白,大家进来看看
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016527 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved