Previous Topic Next topic Print topic


UPDATE (Searched)

Updates a table or view based on specified search conditions.

Syntax:

>>--EXEC SQL--.-------------------.---------------------->
              +-FOR :host_integer-+ 

 >-----.-------------.------UPDATE------.-table_name-.---->
       +-AT db_name--+                  +-view_name--+

          +------ ,--------+
          V                |
 >---SET--column_expression--.-------------------------.-->
                             +-WHERE search_conditions-+

 >----END-EXEC---><

Parameters:

:host_integer A host variable that specifies the maximum number of host array elements processed. Must be declared as PIC S9(4) COMP-5 or PIC S9(9) COMP-5.
db_name The name of a database that has been declared using DECLARE DATABASE.
table_name The table to be updated.
view_name The view to be updated.
column_expression A value for a particular column name. This value can be an expression or a null value.
search_conditions Any valid expression that can follow the standard SQL WHERE clause.

Comments:

UPDATE is a standard SQL statement which is passed directly to the ODBC driver. See the documentation supplied with your ODBC driver for the exact syntax.

If you do not specify a WHERE clause, all the rows in the named table are updated.

If one of the host variables used in the WHERE clause or SET clause is an array, they must all be arrays.

After execution, SQLERRD(3) contains the number of elements processed. For UPDATE it is the total number of rows updated.

Example:

     EXEC SQL
        UPDATE staff
        SET first_name = 'Jonathan'
        WHERE staff_id = 1
     END-EXEC

     MOVE 'Phil' TO NewName
     MOVE 1 TO targetID

     EXEC SQL
        UPDATE staff
        SET first_name = :NewName
        WHERE staff_id  = :targetID
     END-EXEC
Previous Topic Next topic Print topic