VBA访问SQL Server表插入

时间:2017-08-28 04:52:07

标签: sql-server access-vba

我处理MS Access时遇到了一些问题。我一起使用SQL Server和MS Access。

我尝试将数据插入新表中。

首先,这个程序要求我在列表中添加一个项目(就像临时表一样)。然后,还有另一个提交按钮,用于确认数据(此步骤是必需的,并且效率不高。请不要询问此步骤。)

要将数据添加到列表,我使用存储过程。但我不知道如何再次提交数据需要做什么。

enter image description here

这是我的代码:

Dim rs As ADODB.Recordset

strConn = "DRIVER=SQL Server;SERVER=CHU-AS-0004;DATABASE=RTC_LaplaceD_DEV;Trusted_Connection=Yes;"
Set conn = New ADODB.Connection
conn.Open strConn
cmd.ActiveConnection = conn
Set rs = New ADODB.Recordset
rs.Open "Insert into dbo.Blend values(List731.Column(1, introw),List731.Column(2, introw),TextRequestNo.Value, List731.Column(3, introw),List731.Column(4, introw),List731.Column(5, introw))"
conn.Close
Set rs = Nothing
MsgBox "Done"

当我使用此代码运行时,我收到此错误:

enter image description here

我认为我的代码中有一些缺失,但我不知道如何继续。 有没有人可以给我一些关于此的信息?

1 个答案:

答案 0 :(得分:0)

有很多方法可以做这种事情。这样的事情应该可以完成工作。

Sub MoveDateFromAccessToSQLServer()

Dim adoCN As ADODB.Connection
Dim sConnString As String
Dim sSQL As String
Dim lRow As Long, lCol As Long

sConnString = "Provider=sqloledb;Server=servername;Database=NORTHWIND;User Id=xx;Password=password"

Set adoCN = CreateObject("ADODB.Connection")

'adoCN.Open sConnString

'Assumes that you have Field1, Field2 and Field3 in columns A, B and C
'Text values must be enclosed in apostrophes whereas numeric values should not.



    sSQL = "INSERT INTO YOUR_TABLE (FIELD1, FIELD2, FIELD3) " & _
            " VALUES (" & _
            "'" & Column(1, introw) & "', " & _
            "'" & Column(2, introw) & "', " & _
            "'" & Column(3, introw) & "')"

    adoCN.Execute sSQL



adoCN.Close

Set adoCN = Nothing


End Sub