gpt4 book ai didi

sql - 经典 ASP SQL 查询返回十列中的两列

转载 作者:行者123 更新时间:2023-12-02 09:01:44 24 4
gpt4 key购买 nike

我希望有人可以帮助解决问题...我不从事任何与编程相关的工作,但我们非常需要一些 Assets 跟踪,所以在我的业余时间(不是很多,我们平均每天 10 小时) )并使用手头的工具(运行 winXP 的 600mhz 堆),我构建了一个小型经典 ASP 站点来处理所有跟踪和订单。

一切都很好,直到我决定有更多的空闲时间并决定进行一些升级。整个事情相当困惑,但最糟糕的是速度太慢了。所以我决定放弃我的访问数据库和 JET 驱动程序并使用 MS SQL Server 2000 Express(不要忘记,600mhz 并且 RAM 不多)。我开始重建,一切似乎都运行良好(而且速度更快),直到我开始出现错误。我发现对于某些查询,只有几个列会返回任何数据。

例如:我有一个 shopitems 表,其中包含 gID(uniqueID)、iDesc(description)、iLength、iQty、colID(交叉引用)。我执行查询以获取特定类别中的所有内容:Select * from shopitems where catID=22 order by gID asc。然后我开始单步执行并显示所有内容。

问题是,只有gID和colID字段有数据,其他都没有。我打开了 Web Data Administrator 应用程序并在其中运行查询,它返回了一切正常的内容。所以后来我发现某个地方有一个错误,所以我写了一个快速测试页面和同样的问题(除了这次它的 gID 和 iLength 返回数据)。它都是数据类型的混合,iDesc 是 nText,iLength 是 int。我已经浏览了我能找到的所有内容,但我认为这是我在 SQL 中缺少的东西......有人有什么想法吗?
另外,我在家里的废弃计算机上复制了这个,它实际上有一个现代处理器和相当大的内存,所以它根本不是机器。

感谢您的帮助...我听播客,似乎服务器/sql 周已经有一段时间了,我想我应该在这里问某人...

----编辑----
更改了代码...该代码的一个版本工作了一段时间,现在不太好...如果我注释掉

gID=rs1("gID")

然后我得到 iDesc 的值,但不是其他值。

<%@ Language=vbscript %>

可恶

Set db1 = Server.CreateObject("ADODB.Connection")
'db1.Open "Provider=MSDASQL;Driver={SQL Server};Server=Phsion;Database=master;"
db1.Open "Provider=MSDASQL;DSN=SHOPWEB;"
'sqltxt="select gID, iLength, iDesc from shopitems where catID=45 order by CAST(idesc as varchar)"

sqltxt="select iDesc, gID from ShopItems order by gID asc"
set rs1=db1.execute(sqltxt)
rs1.movefirst
do until rs1.eof
gID=rs1("gID")
'iLength=rs1("iLength")

iDesc=rs1("iDesc")

response.write("<br>gID: " & gid & "<br>")

response.write("<br>iLength: " & iLength & "<br>")

response.write("<br>iDesc: " & iDesc & "<br>")
rs1.movenext
loop
rs1.close
set rs1=nothing
db1.close
set db1=nothing

最佳答案

在顶部(<% 和 %> 内)添加 Option Explicit 以使变量声明成为必需,然后使用 Dim variable-name-goes-here 声明变量对于所有变量,瞧,您会立即看到问题。

关于sql - 经典 ASP SQL 查询返回十列中的两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/661437/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com