关于数据库的 请达人支招!!!!!!!!!!!!!!!!!!!!!

yxwsbobo 2010-03-03 09:11:38
数据库就学了半天还是mysql 现在没时间学了 请帮我看看 问题出在哪

我不知道是那种语言,我是在模仿修改代码

如果是
Set rs = server.CreateObject("adodb.recordset")
sql = "select top 10 dk_news_name_unit,count(*) as my_need_num_k from dk_news_unit group by dk_news_name_unit order count(*) desc "

rs.Open sql, conn, 1, 1



OK 正常没有问题 但我原本是想


Set rs = server.CreateObject("adodb.recordset")
sql = "select top 10 dk_news_name_unit,count(*) as my_need_num_k from dk_news_unit group by dk_news_name_unit order my_need_num_k desc "

rs.Open sql, conn, 1, 1

提示错误
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e21'

ODBC 驱动程序不支持所需的属性。


经过多方测试 发现as作为新的别名的时候 用作order参数 就会出这个错误 请教原因


另外 模仿写了一段循环

for i=1 to 10
response.Write "<script language=javascript>alert('"&rs("dk_news_name_unit")&rs("my_need_num")&"');</script>"
rs.movenext
next


请教如何中途退出 例如break;
...全文
142 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
sjdev 2010-03-03
  • 打赏
  • 举报
回复
不用搜,我专门研究过vbs,可以保证它的正确性。

yxwsbobo 2010-03-03
  • 打赏
  • 举报
回复
引用 15 楼 sjdev 的回复:
VBScript codeexitfor


恩 没错 我也是刚搜到 exit for 测试没问题




引用 16 楼 rebort_q 的回复:
sql = "select ISNULL(dk_news_name_unit,'xx') as new_name from dk_news_unit order by new_name_unit desc "
如果还不行,.....
break是跳转到别的界面?

不行,你看我那个最简单的 as别名作为 order参数啊 那么简单的语句应该不会出错, 估计是我用的这个破语言,或者版本啥问题的 不支持别名作为order? 反正外面用 as的别名没问题 就里面用出错
精锐掷矛手 2010-03-03
  • 打赏
  • 举报
回复
sql = "select ISNULL(dk_news_name_unit,'xx') as new_name from dk_news_unit order by new_name_unit desc "
如果还不行,.....
break是跳转到别的界面?
sjdev 2010-03-03
  • 打赏
  • 举报
回复
exit for
yxwsbobo 2010-03-03
  • 打赏
  • 举报
回复
引用 13 楼 sjdev 的回复:
呵呵,sql语句的语法都记不清楚了。

既然你用到了,就找个机会好好学习一下吧:sql语法.

----------------------
脚本语法比较简单
上面vbs类似于vb语法。
js类似c语法。


好的 有空学一下吧 现在有个暂时应急方案 order by 2 直接用数字排序

    for i=1 to 10 response.Write "<script language=javascript>alert('"&rs("dk_news_name_unit")&rs("my_need_num")&"');</script>" rs.movenext next



请教如何中途退出 例如break;


这个知道吗
sjdev 2010-03-03
  • 打赏
  • 举报
回复
呵呵,sql语句的语法都记不清楚了。

既然你用到了,就找个机会好好学习一下吧:sql语法.

----------------------
脚本语法比较简单
上面vbs类似于vb语法。
js类似c语法。
yxwsbobo 2010-03-03
  • 打赏
  • 举报
回复
哦 原来你意思那个是别名啊 不需要as吗?


经过测试

sql = "select dk_news_name_unit as new_name from dk_news_unit order by new_name desc "
sql = "select dk_news_name_unit new_name from dk_news_unit order by new_name desc "
sql = "select dk_news_name_unit new_name from dk_news_unit order by dk_news_name_unit desc "

以上3个都出错

只有
sql = "select dk_news_name_unit as new_name from dk_news_unit order by dk_news_name_unit desc "
sql = "select dk_news_name_unit from dk_news_unit order by dk_news_name_unit desc "

正确 错误统一是

Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e21'

ODBC 驱动程序不支持所需的属性。



精锐掷矛手 2010-03-03
  • 打赏
  • 举报
回复
引用 10 楼 sjdev 的回复:
new_name是别名,不能作为order by的参数吧。

怎么不可以?
sjdev 2010-03-03
  • 打赏
  • 举报
回复
new_name是别名,不能作为order by的参数吧。
精锐掷矛手 2010-03-03
  • 打赏
  • 举报
回复
试试取消as
Set rs = server.CreateObject("adodb.recordset")
sql = "select dk_news_name_unit new_name from dk_news_unit order by new_name desc "

rs.Open sql, conn, 1, 1
不动如岳 2010-03-03
  • 打赏
  • 举报
回复
不太懂,帮顶下
yxwsbobo 2010-03-03
  • 打赏
  • 举报
回复
简单来说

Set rs = server.CreateObject("adodb.recordset")
sql = "select dk_news_name_unit as new_name from dk_news_unit order by new_name desc "

rs.Open sql, conn, 1, 1




改成 sql = "select dk_news_name_unit as new_name from dk_news_unit order by dk_news_name_unit desc "

就没问题了
yxwsbobo 2010-03-03
  • 打赏
  • 举报
回复
着急了 写错了


2个里面都是 order by
sjdev 2010-03-03
  • 打赏
  • 举报
回复
VBS脚本,我能看懂。说简短点,什么地方有问题。
精锐掷矛手 2010-03-03
  • 打赏
  • 举报
回复
用 Order by 试试
zealand_1 2010-03-03
  • 打赏
  • 举报
回复
不明白啊,还请楼下高人解答。
sjdev 2010-03-03
  • 打赏
  • 举报
回复
server端写的吧,怎么还脚本呢?
yxwsbobo 2010-03-03
  • 打赏
  • 举报
回复
数据库就学了半天还是mysql 现在没时间学了 请帮我看看 问题出在哪

我不知道是那种语言,我是在模仿修改代码

如果是
Set rs = server.CreateObject("adodb.recordset")
sql = "select top 10 dk_news_name_unit,count(*) as my_need_num_k from dk_news_unit group by dk_news_name_unit order count(*) desc "

rs.Open sql, conn, 1, 1



OK 正常没有问题 但我原本是想


Set rs = server.CreateObject("adodb.recordset")
sql = "select top 10 dk_news_name_unit,count(*) as my_need_num_k from dk_news_unit group by dk_news_name_unit order my_need_num_k desc "

rs.Open sql, conn, 1, 1

提示错误
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e21'

ODBC 驱动程序不支持所需的属性。


经过多方测试 发现as作为新的别名的时候 用作order参数 就会出这个错误 请教原因


另外 模仿写了一段循环

for i=1 to 10
response.Write "<script language=javascript>alert('"&rs("dk_news_name_unit")&rs("my_need_num")&"');</script>"
rs.movenext
next


请教如何中途退出 例如break;









原本想突出不同 没想到不能用 主要就是 order后面的参数 用as的别名就不行

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧