Mysql 在ado记录集中设置变量-VBA

Mysql 在ado记录集中设置变量-VBA,mysql,vba,variables,ado,recordset,Mysql,Vba,Variables,Ado,Recordset,我需要建立一些金融业务的渐进平衡。我创建了变量SaldoProgr,并尝试将sql转换到我的Heidisql中,一切正常 问题是当我将sql传递给ado记录集时: sql= “set@SaldoProgr:=0; 选择cvCodLan、cdData、ccMovimento、ccDocto、ccCredito、ccDebito、ROUND(@SaldoProgr:=@SaldoProgr+ifnull(ccCredito,0)-ifnull(ccDebito,0)),2)作为Saldo 来自tbl

我需要建立一些金融业务的渐进平衡。我创建了变量
SaldoProgr
,并尝试将sql转换到我的Heidisql中,一切正常

问题是当我将sql传递给ado记录集时:

sql=
“set@SaldoProgr:=0;
选择cvCodLan、cdData、ccMovimento、ccDocto、ccCredito、ccDebito、ROUND(@SaldoProgr:=@SaldoProgr+ifnull(ccCredito,0)-ifnull(ccDebito,0)),2)作为Saldo
来自tbl_FluxoCaixa
其中(cdData介于'xxxx xx xx'和'xxxx xx xx'之间)按cdData排序”
当我将此字符串传递给ado记录集时,它返回错误

gRs
是一个
ADODB.Recordset

    With gRs
        Set .ActiveConnection = dbADO
        .Source = sql
        .LockType = adLockOptimistic
        .CursorType = adOpenKeyset
        .CursorLocation = adUseClient
        .Open
    End With
我想知道如何创建一个变量并将其传递给ado

tks everyone

我是这样解决的:

选择cvCodLan、cdData、ccMovimento、ccDocto、ccCredito、ccDebito、,
舍入(@SaldoProgr:=@SaldoProgr+ifnull(ccCredito,0)-ifnull(ccDebito,0)),2)作为Saldo
来自tbl_FluxoCaixa
加入(选择@SaldoProgr:=0)R
其中(cdData介于'xxxx xx xx'和'xxxx xx xx'之间)按cdData排序
您能告诉我们,它会引发哪个错误吗?