gpt4 book ai didi

sql - ms-access 将查询结果保存在一个字符串中

转载 作者:行者123 更新时间:2023-12-04 14:19:38 24 4
gpt4 key购买 nike

我在查询部分保存了一个查询。我正在从 VBA 运行查询。是否可以将此查询的结果保存为字符串?

最佳答案

ADO Recordset 有一个 GetString 方法,它可能对您有用。

我有一个名为 qryListTables 的查询,如下所示:

SELECT m.Name AS tbl_name
FROM MSysObjects AS m
WHERE
(((m.Name) Not Like "msys%"
And (m.Name) Not Like "~%")
AND ((m.Type)=1))
ORDER BY m.Name;

请注意,查询使用 % 而不是 * 作为通配符。做出该选择的原因是 ADO 需要 ANSI 通配符(%_ 而不是 *? ).

我可以使用以下函数吐出一个字符串,其中包含我数据库中常规表的引用名称,以分号分隔,方法如下:

? DemoGetString("qryListTables", True)

Public Function DemoGetString(ByVal pQueryName As String, _
Optional ByVal AddQuotes As Boolean = False) As Variant
'* early binding requires a reference to Microsoft ActiveX
'* Data Objects Library
'Dim rs As ADODB.Recordset
'Set rs = New ADODB.Recordset

'* use late binding; no referenced needed
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")

Dim varOut As Variant
rs.Open pQueryName, CurrentProject.Connection
If AddQuotes Then
varOut = """" & rs.GetString(2, , , """;""") '2 = adClipString
' strip off last quote
If Len(varOut & vbNullString) > 0 Then
varOut = Left(varOut, Len(varOut) - 1)
End If
Else
varOut = rs.GetString(2, , , ";") '2 = adClipString
End If
rs.Close
Set rs = Nothing
DemoGetString = varOut
End Function

关于sql - ms-access 将查询结果保存在一个字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1369594/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com