我正在为一些“重型” SQL Server过程构建UI。我想让用户请求多个“作业”以在SQL Server上异步运行。
我从一个按钮下面调用一个函数,该按钮会构建一个ADODB.COMMAND以执行SQL异步。
Function ExecQdef(qDef As QueryDef, tSql As String)
DoEvents
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
cmd.ActiveConnection = "DSN=TFTEA_Template2;MultipleActiveResultSets=True;" 'conn
cmd.CommandText = tSql
Debug.Print cmd.CommandText
cmd.Execute tSql, , adAsyncExecute
Set cmd = Nothing
End Function
计时器上的第二个功能读取进度表并报告到目前为止的“作业”结果。
如果用户请求一个或两个“职位”,效果很好。 一世 如果他们发送了第三个或更多,我什么也得不到,就像第三个命令一样。execute被忽略。
sp_who2显示我的应用程序仅获得2个会话。 sp_configure允许20。没有更改。
试图将MARS设置添加到ODBC。没有变化。