ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Running a SQL Update Query in Excel VBA (https://www.excelbanter.com/excel-programming/368572-running-sql-update-query-excel-vba.html)

KC

Running a SQL Update Query in Excel VBA
 
I am using VBA in Excel to connect to a SQL server and retreve data. That
is working. The problem is that I want to run an Update query to update one
line in the database and it isn't working. Below is an example of the code I
am using.


Dim cmdCommand As New ADODB.Command
Dim recSet As New ADODB.Recordset
Dim cn As New ADODB.Connection
cmdCommand.ActiveConnection = cn
strSQLCommand = "UPDATE Materials.ReportName = test Where
materials.MaterialID = 5"
cmdCommand.CommandText = strSQLCommand
cmdCommand.CommandType = adCmdText
Set recSet = cmdCommand.Execute
please help
--
KC

Robert Bruce[_2_]

Running a SQL Update Query in Excel VBA
 
Roedd <<KC wedi ysgrifennu:

I am using VBA in Excel to connect to a SQL server and retreve
data. That is working. The problem is that I want to run an Update
query to update one line in the database and it isn't working. Below
is an example of the code I am using.

Dim cmdCommand As New ADODB.Command
Dim recSet As New ADODB.Recordset
Dim cn As New ADODB.Connection
cmdCommand.ActiveConnection = cn
strSQLCommand = "UPDATE Materials.ReportName = test Where
materials.MaterialID = 5"
cmdCommand.CommandText = strSQLCommand
cmdCommand.CommandType = adCmdText
Set recSet = cmdCommand.Execute
please help


Your UPDATE syntax is wrong. The correct syntax for update is:

UPDATE table_name
SET column_name = new_value
WHERE column_name = some_value

so try something like "UPDATE Materials set ReportName = 'test' Where
MaterialID = 5". Note that I have also enclosed the string value 'test' in
single quotes.

HTH

Rob




RB Smissaert

Running a SQL Update Query in Excel VBA
 
Try something like this:

Sub test()

Dim objCommand As ADODB.Command
Set objCommand = New ADODB.Command

With objCommand
.ActiveConnection = ADOConn
.CommandText = "UPDATE Materials " & _
"set ReportName = 'test' " & _
"Where MaterialID = 5"
.Execute
End With

End Sub


RBS

"KC" wrote in message
...
I am using VBA in Excel to connect to a SQL server and retreve data.
That
is working. The problem is that I want to run an Update query to update
one
line in the database and it isn't working. Below is an example of the
code I
am using.


Dim cmdCommand As New ADODB.Command
Dim recSet As New ADODB.Recordset
Dim cn As New ADODB.Connection
cmdCommand.ActiveConnection = cn
strSQLCommand = "UPDATE Materials.ReportName = test Where
materials.MaterialID = 5"
cmdCommand.CommandText = strSQLCommand
cmdCommand.CommandType = adCmdText
Set recSet = cmdCommand.Execute
please help
--
KC




All times are GMT +1. The time now is 09:43 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com