如何根据数据库中记录的数目来定义一个数组,然后把每个记录中的一个FIELD存入数组呢?

zhouxm 2002-05-11 01:28:58
使用VBSCRIPT是否能实现,具体如何做,请指教!!
...全文
30 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhouxm 2002-05-11
搞定 给分,
谢谢大家!
回复
wangfei2428 2002-05-11
一个表有可能在同一列中有重复的值。例如,数据库pubs的表authors中有两个作者的名字是Ringer。如果你从这个表中取出所有的名字,名字Ringer将会显示两次。
在特定情况下,你可能只有兴趣从一个表中取出互不相同的值。如果一个字段有重复的值,你也许希望每个值只被选取一次,你可以使用关键字DISTINCT来做到这一点:

SELCET DISTINCT au_lname FROM authors WHERE au_lname="Ringer"

当这个SELECT语句执行时,只返回一个记录。通过在SELECT语句中包含关键字DISTINCT,你可以删除所有重复的值。例如,假设有一个关于新闻组信息发布的表,你想取出所有曾在这个新闻组中发布信息的人的名字,那么你可以使用关键字DISTINCT。每个用户的名字只取一次——尽管有的用户发布了不止一篇信息。
回复
zhouxm 2002-05-11
我的语句是
select * frome tablename t where t.code like 'subject%'

可是有重复的是另外一个FIELD,这样能用DISTINCT 么?
回复
zhouxm 2002-05-11
我的
rs.GetRows()

objRS.recordcount
都报错啊,

怎么回事?
回复
ChinaOk 2002-05-11
那就可以直接在查询时去掉他们
SELECT DISTINCT * FROM TABLENAME
回复
ChinaOk 2002-05-11
它是一个数组。怎么能直接写呢
for (i=0 to ubound(aryData,1))
for (n=0 to ubound(aryData,2)
response.write aryData(i,n)
next
next
回复
zhouxm 2002-05-11
是这样的,
我的数据库中,有重复的内容,大概有4千多条记录,
但是有好多是重复的,我想不重复的去掉,
每条记录只保留一条,这样
是不是就要用数组来做了,所以我选择先保存如数组,
还有其他的好方法么?
回复
ChinaOk 2002-05-11
mobilephone(此页无法显示)
你真的要让楼主此页无法显示啊。呵呵。
回复
zhouxm 2002-05-11
我使用Response.Write(rs.GetRows())
为什么不输出记录数呢?
而且不是说VBSCRIPT不能
定义动态数组么.
回复
mobilephone 2002-05-11
'定义动态二维数组
dim reco()
'连接数据库,用记录集读取数据
……
set objRs=server.createobject("adodb.recordset")
rs.open sql,conn
'读取行数与列数
dim rowCount= objRs.recordcount
dim columnCount =objRs.fields.count
'重定义数组
redim reco(rowCount,columnCount)
'将FIELD存入数组
dim i,j
i=1
do until objRs.eof
j=1
for each x in objRs.fields
reco(i,j)=x.value
next
rs.movenext
i=i+1
loop
基本上是这样了,但是应该注意如果数据量大时,数组容量将变大,会消耗很大的内存空间,当然就影响了效率。
回复
ChinaOk 2002-05-11
aryData=rs.GetRows()
回复
ChinaOk 2002-05-11
rs.GetRows()
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2002-05-11 01:28
社区公告
暂无公告