閉じた引用符とかっこ内で増分する整数値を追加する必要があります。VBAで閉じた引用符と括弧内の整数値を増やす
質問1.各値が1ずつ上がるように整数値を増やすにはどうすればよいですか?[the_id] = 1、[the_id] = 2などを下の引用符?
Dim Z As Integer
For Z = 1 To 5
SQL.CommandText = SQL.CommandText + "UPDATE [MyDatabase].[dbo].[tbl_MyTable] SET [MyField] =(?) WHERE [the_id] = " & Z;"
Next Z
意図した結果が以下のように増分:
SQL.CommandText = SQL.CommandText + "UPDATE [MyDatabase].[dbo].[tbl_MyTable] SET [MyField] =(?) WHERE [the_id] = 1;"
SQL.CommandText = SQL.CommandText + "UPDATE [MyDatabase].[dbo].[tbl_MyTable] SET [MyField] =(?) WHERE [the_id] = 2;"
SQL.CommandText = SQL.CommandText + "UPDATE [MyDatabase].[dbo].[tbl_MyTable] SET [MyField] =(?) WHERE [the_id] = 3;"
SQL.CommandText = SQL.CommandText + "UPDATE [MyDatabase].[dbo].[tbl_MyTable] SET [MyField] =(?) WHERE [the_id] = 4;"
SQL.CommandText = SQL.CommandText + "UPDATE [MyDatabase].[dbo].[tbl_MyTable] SET [MyField] =(?) WHERE [the_id] = 5;"
第二に、私はこのクエリ内で同じことを行うのですか?
このようになりますか?
次のような結果が得られます。
SQL.Parameters.Append SQL.CreateParameter("MyField1", adVarChar, adParamInput, 50, MyField1)
SQL.Parameters.Append SQL.CreateParameter("MyField2", adVarChar, adParamInput, 50, MyField2)
SQL.Parameters.Append SQL.CreateParameter("MyField3", adVarChar, adParamInput, 50, MyField3)
SQL.Parameters.Append SQL.CreateParameter("MyField4", adVarChar, adParamInput, 50, MyField4)
SQL.Parameters.Append SQL.CreateParameter("MyField5", adVarChar, adParamInput, 50, MyField5)
だから 'SQL'は' ADODB.Command'ですか?それに言及すると便利かもしれません。また、どのRDBMSに接続していますか? SQLサーバー?それに言及すると便利かもしれません... –
'MyField&i'の' MyField'は文字列リテラルではなく変数です。 'MyField&i'の結果は' MyField'の* value *(*も*明白ではありません)となり、 'i'の値と連結されます。 IMOのあなたの質問/あなたが解決しようとしている特定の問題はむしろ不明確です。明確にするために自由に[編集]してください。 –
FWIW 'cmd'は' ADODB.Command'オブジェクトのより良い名前です。 'sql'は実際のコマンド文字列の良い名前になります。 –