Mysql recordset.sort无效的行句柄
我有一个MySQL存储过程生成一个resultset。查询使用Mysql recordset.sort无效的行句柄,mysql,asp-classic,vbscript,Mysql,Asp Classic,Vbscript,我有一个MySQL存储过程生成一个resultset。查询使用GROUP\u CONCAT选择行作为列 SQL代码片段 SELECT CONCAT( ' SELECT MDE_ID, MDE_CreatedOn, MDE_LastEditedOn ' , GROUP_CONCAT(CONCAT( ' ,t', MDF_ID, '.MDEMDF_Value AS `', REPLACE(MDF_Label, '`', '``'), '`' ) SEPARATOR ' ') 接下来
GROUP\u CONCAT
选择行作为列
SQL代码片段
SELECT CONCAT(
' SELECT MDE_ID, MDE_CreatedOn, MDE_LastEditedOn '
, GROUP_CONCAT(CONCAT(
' ,t', MDF_ID, '.MDEMDF_Value AS `', REPLACE(MDF_Label, '`', '``'), '`'
) SEPARATOR ' ')
接下来,我想对列上的记录集进行排序
SQL = "CALL moduleentry_select(" & prjid & ",0,26,0)"
set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorLocation = 3
rs.LockType = 3
rs.Open SQL, Conn
rs.Sort = "volgnummer"
我已验证,该列位于记录集中
我得到以下错误:
Microsoft Cursor Engine error '80040e04'
Row handle is invalid.
default.asp, line 176
第176行是rs.Sort=“volgnummer”
编辑
SELECT CONCAT(
' SELECT MDE_ID, MDE_CreatedOn, MDE_LastEditedOn '
, GROUP_CONCAT(CONCAT(
' ,t', MDF_ID, '.MDEMDF_Value AS `', REPLACE(MDF_Label, '`', '``'), '`'
) SEPARATOR ' ')
“Volgnummer”列实际上不存在于数据库中。它是通过旋转原理,使用
GROUP\u CONCAT
动态选择的。关于此SA答案:我是否已验证记录集中是否存在该列?是否已完整阅读我的问题?;)抱歉,我的意思是写“您如何验证记录集中是否存在该列”,blonde moment:/ah,没问题:)我在MySQL Workbench中运行了存储过程调用,并在结果集中看到了该列。哦,那远远不是说该列存在于经典ASP记录集中。如果只删除rs.Sort
行,会得到什么?我怀疑您将获得空记录集或意外列。