【问题标题】:getting the result of stored procedure using JavaScript使用 JavaScript 获取存储过程的结果
【发布时间】:2011-07-13 09:44:42
【问题描述】:

我有一个与 Web 无关的 JavaScript 脚本,需要运行一个包含引发错误语句的存储过程,并确保该过程已成功运行。

如果我这样做,

function runSQL()
{
    var rs = new ActiveXObject("ADODB.Recordset");

    try {
        rs.open("EXEX spAddToPar 'foo',1 , 2 ", conn);          
    }
    catch (e) {
        rs.close(); 
    }   
    rs.close();
}

我如何知道它是否运行成功?

【问题讨论】:

  • 用后端代码在服务器上运行这个不是更好吗?在那里,您拥有管理错误等的所有设施。您可以将响应返回给 js,并使用 ajax 来管理流程。还是有原因必须在 js 中?

标签: javascript sql sql-server stored-procedures


【解决方案1】:

目前你没有。您刚刚发现任何错误的唯一迹象并将其丢弃。

catch 块中,您必须做一些稍后可以检查的事情,例如更改变量的值:

function runSQL() {
  var rs = new ActiveXObject("ADODB.Recordset");
  var success = true;
  try {
    rs.open("EXEC spAddToPar 'foo', 1, 2", conn);          
  } catch (e) {
    success = false;
  }
  rs.close();
  return success;
}

注意:这仅表明是否存在某种错误。如果您想确切地知道错误是什么,您可能想从异常对象中获取更多信息。不确定异常来自存储过程引发错误,还有其他可能出错的地方。

【讨论】:

    猜你喜欢
    • 2017-08-01
    • 2017-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    相关资源
    最近更新 更多