0

我在服务器上运行的 JS 中使用了一个简单的 SQL 语句。声明是

SELECT Record FROM RecordMap

在这里,我从变量中插入“地图”字样。在 try/catch 中执行此查询后,我从捕获的异常中记录了一个错误 - 在与请求的名称或序号相对应的集合中找不到项目。

我使用 SQL+ 执行相同的查询,它返回正确的结果。

代码片段粘贴在下面。(日志函数只是将传递的字符串记录到 txt 文件中。我正在使用它来调试此错误)

(我在本地机器上使用 MS SQL Server 2005)

        var sqlText = "SELECT Record FROM " + batch[i].map;
        Log(sqlText);
        var Record = "";     
        try
        {
            var rs = sqlConnection.Execute( sqlText );
            if ( !rs.EOF )
            {
                if(rs(1).value != null)  Record = rs(1).value; 
            }
        }
        catch(x)
        {
            Log(x.message);
        }
        rs.close();
4

1 回答 1

0

自从我完成客户端编码以来已经有一段时间了。

但是,序数位置通常意味着您试图引用 rs(x) ,其中 x 超出范围。您确定记录集是基于一还是零。

此外,打印 sqlText 以确保将正确的 T-SQl 传递给 SQL Server。

干杯

于 2013-08-13T20:51:08.020 回答