0

SQL Server 2008 データベースにデータを書き込む小さなプログラムをテストしています。これはコードです:

Dim MyConn As ADODB.Connection
Dim MyRecSet As ADODB.Recordset
Dim st1 As Integer

Set MyConn = New ADODB.Connection
MyConn.ConnectionString = "Provider=sqloledb;" & _
       "Data Source=xxx\SQLEXPRESS2;" & _
       "Initial Catalog=db;" & _
       "User Id=sa;" & _
       "Password=xxx"
MyConn.Open

st1 = 5
 MyConn.Execute("INSERT INTO steen (steen1) VALUES (st1)")

MyConn.Close

ただし、次のエラーが表示されます: 列名 'st1' が無効です。なぜこのエラーが発生するのかわかりません。クエリを次のように変更すると:

INSERT INTO steen (steen1) VALUES (5)

それは完全に機能します。

エラーが発生する理由を知っている人はいますか?

ありがとう

4

1 に答える 1

2

試す:

MyConn.Execute("INSERT INTO steen (steen1) VALUES ("& st1 & ")")

または:

st1 = 5
 Dim StrQuery As String
StrQuery = "INSERT INTO steen (steen1) VALUES ("& st1 & ")"


MyConn.Execute(StrQuery)
于 2012-12-05T16:02:58.643 に答える