【发布时间】:2016-04-05 00:51:15
【问题描述】:
我想不通,我在 SQL Server 管理中运行该语句并返回所有记录集,但是当我通过代码运行完全相同的语句时,它总是只返回第一个数据集。
我在 SQL Fiddle 中尝试了同样简单的 SELECT 语句,它按应有的方式工作,这可能是什么原因?
这是SQL Fiddle 来展示我正在尝试做的事情
SELECT column1, column2
FROM Table1
WHERE column2 = '1234';
数据的外观,
|column1(nvarchar(50)) | column2(nvarchar(50))|
-----------------------------------------------
|Section1 | 1234 |
|Section2 | 1234 |
|Section3 | 1234 |
|Section3 | 1234 |
-----------------------------------------------
运行代码后的结果。
|column1(nvarchar(50)) | column2(nvarchar(50))|
-----------------------------------------------
|Section1 | 1234 |
-----------------------------------------------
我正在使用的代码。
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sConnString As String
sConnString = "PROVIDER=SQLOLEDB;" & _
"Data Source=190.190.10.XXX,1433;" & _
"Initial Catalog=my_DB;" & _
"User Id=sa;" & _
"Password=my_Password;"
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open sConnString
strSQL = "SELECT Section_Data, Words_Data FROM Words_TBL WHERE Words_Data = '1234'"
rs.Open strSQL
If rs.EOF = False Then
x = rs.GetRows
Else
For i = LBound(x) To UBound(x)
Debug.Print x(i, 0)
Next i
【问题讨论】:
-
你能告诉我们你的代码吗?
-
您要求我们告诉您为什么您的代码无法正常工作,但未包含您的代码。您认为我们可以提供哪些帮助?
-
我的错,我应该把它放进去。现在可以了。
-
您是否使用 ADO / 记录集来获取此数据?
-
@iliketocode,更新代码
标签: sql sql-server vba sql-server-2014