The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

RunSQL Method [Access 2003 VBA Language Reference]

Office 2003

The RunSQL method carries out the RunSQL action in Visual Basic.

expression.RunSQL(SQLStatement, UseTransaction)

expression Required. An expression that returns one of the objects in the Applies To list.

SQLStatement  Required Variant. A string expression that's a valid SQL statement for an action query or a data-definition query. It uses an INSERT INTO, DELETE, SELECT...INTO, UPDATE, CREATE TABLE, ALTER TABLE, DROP TABLE, CREATE INDEX, or DROP INDEX statement. Include an IN clause if you want to access another database.

UseTransaction  Optional Variant. Use True (–1) to include this query in a transaction. Use False (0) if you don't want to use a transaction. If you leave this argument blank, the default (True) is assumed.


For more information on how the action and its arguments work, see the action topic.

This method only applies to Microsoft Access databases (.mdb).

The maximum length of the sqlstatement argument is 32,768 characters (unlike the SQL Statement action argument in the Macro window, whose maximum length is 256 characters).

If you leave the usetransaction argument blank, don't use a comma following the sqlstatement argument.


The following example updates the Employees table, changing each sales manager's title to Regional Sales Manager:

Public Sub DoSQL()

    Dim SQL As String
    SQL = "UPDATE Employees " & _
          "SET Employees.Title = 'Regional Sales Manager' " & _
          "WHERE Employees.Title = 'Sales Manager'"

    DoCmd.RunSQL SQL
End Sub

Applies to | DoCmd Object