【问题标题】:How to return COUNT(*) and store it in a Variable for further usage in VBscript如何返回 COUNT(*) 并将其存储在变量中以便在 VBscript 中进一步使用
【发布时间】:2015-02-18 22:36:22
【问题描述】:

我是 Vbscript 新手(准确地说是 3 天),

我正在将我的脚本连接到 SQL Server 并使用数据库。我已经连接成功了

现在这是我想做的:

我想将SELECT COUNT(*) FROM TABLE_A 的值存储在要在VBscript 中使用的变量中。

这个SQL查询返回表中的行数,它是一个整数,但是我如何返回它并保存在一个变量中呢?

我试过了:

Dim VARX
SET VARX = connection.execute("SELECT COUNT(*) FROM TABLE_A")

所以现在VARX 应该包含TABLE_A 的行数。

但我知道这是错误的方式。当然它会发布一个错误“类型不匹配:”。请指导我!

【问题讨论】:

    标签: sql sql-server sql-server-2008 vbscript


    【解决方案1】:

    试试这样的:

    Dim rs, varx
    SET rs = connection.execute("SELECT COUNT(*) FROM TABLE_A")
    varx = rs(0).value
    

    实际上不是我的专业领域,这里有一些参考:

    【讨论】:

    • 第二组错误。返回的值是一个简单的数字,而不是一个对象。
    • @Anantvaibhav 不客气。顺便说一句,为什么没有标记这个答案? (是不是更新后的代码对你不起作用?)
    • @har07,正如我所说,它经过了一些修改。
    【解决方案2】:

    这是最终的有效代码:

    ...
    Set Recordset=CreateObject("ADODB.Recordset")
    ConnString="DRIVER={SQL Server};SERVER=PCX\SQLEXPRESS;UID=sa;PWD=password;DATABASE=testdb"
    
    Dim SQL_Rows, NoOfRows
    
    SQL_Rows = "SELECT Count (*) from Table_A"
    Recordset.open SQL_Rows,ConnString
    NoOfRows = Recordset(0).value
    Recordset.close
    
    MsgBox NoOfRows
    

    现在消息框显示 table_A 中的行数

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-10
      • 1970-01-01
      • 2019-10-21
      • 1970-01-01
      • 2013-06-30
      • 1970-01-01
      相关资源
      最近更新 更多