无法在VBA中使用sql临时表(无法删除表)
如何更改vba代码,使其能够在sql查询中运行临时表 这是我的VBA代码存储过程包含的临时表无法在VBA中使用sql临时表(无法删除表),sql,vba,Sql,Vba,如何更改vba代码,使其能够在sql查询中运行临时表 这是我的VBA代码存储过程包含的临时表 Sub a() Dim connection As ADODB.connection Dim recordset As ADODB.recordset Dim command As ADODB.command Dim strProcName As String 'Stored Procedure name Dim strConn As String ' connection string. Dim se
Sub a()
Dim connection As ADODB.connection
Dim recordset As ADODB.recordset
Dim command As ADODB.command
Dim strProcName As String 'Stored Procedure name
Dim strConn As String ' connection string.
Dim selectedVal As String
Set connection = New ADODB.connection
Set recordset = New ADODB.recordset
Set command = New ADODB.command
strConn = "Provider=SQLOLEDB.1;Persist Security Info=true;Data source =1.1.2.7\B;User ID = sa; password=a;Initial catalog=A"
connection.ConnectionString = strConn
connection.Open
command.ActiveConnection = connection
command.CommandText = "pLOAN_LIST"
command.CommandType = adCmdStoredProc
command.Parameters.Refresh
'command.Parameters(1).Value = "3"
Set recordset = command.Execute()
ThisWorkbook.Sheets("Sheet1").Cells(1, 1).CopyFromRecordset recordset
recordset.Close
Set recordset = Nothing
connection.Close
Set connection = Nothing
End Sub
实际上,生成或使用临时表的不是VBA代码,而是存储过程。同样,是存储过程返回临时表 例如,如果要从存储过程返回值集,只需选择它作为最后一个输出 选择 myfield1, myfield2, 麦菲尔德 从…起 @mydefinedtable 哪里 条件=要求 因此,您可能需要首先确定存储过程的实际功能
也许你能比我更详细地描述这一点。与其删除表,不如删除所有数据。不能删除正在使用的表。此解决方案可能不适用于您,但如果您将数据放入表中,但保留表,则效果基本相同。您要求的是什么?还不清楚