
User's Guide
Part VI. SQL Anywhere Reference
Chapter 43. Watcom-SQL Statements
DELETE (positioned) statement
Function
To delete the data at the current location of a cursor.
Syntax
DELETE [ FROM table-spec ]
...WHERE CURRENT OF cursor-name
Parameters
cursor-name: identifier, or host-variable
table-spec: [ owner.]correlation-name ]
owner: identifier
Usage
Embedded SQL, procedures, triggers, and batches.
The host-variable format is for Embedded SQL only.
Permissions
Must have DELETE permission on tables used in the cursor.
Side effects
None.
See also
Description
This form of the DELETE statement deletes the current row of the specified cursor. The current row is defined to be the last row fetched from the cursor.
Name resolution
The table from which rows are deleted is determined as follows:
- If no FROM clause is included, the cursor must be on a single table only.
- If the cursor is for a joined query (including using a view containing a join), then the FROM clause must be used. Only the current row of the specified table is deleted. The other tables involved in the join are not affected.
- If a FROM clause is included, and no table owner is specified, the table-spec value is first matched against any correlation names.
- If a correlation name exists, the table-spec value is identified with the correlation name.
- If a correlation name does not exist, the table-spec value must be unambiguously identifiable as a table name in the cursor.
- If a FROM clause is included, and a table owner is specified, the table-spec value must be unambiguously identifiable as a table name in the cursor.
- The positioned DELETE statement can be used on a cursor open on a view as long as the view is updatable.
Example
