SQL_BLOB_OBJ_DROP deletes an existing BLOB, together with its BLOB value and all its attributes. The input parameters include the database name and the REF value of the BLOB. The deletion of a BLOB actually consists of removing one or more rows from the BLOB table. If an error occurs in the process, this is reported back to the caller and the BLOB remains unchanged. (However, the UPDATED attribute can have been changed.) Concurrent transactions are synchronized as normal in SESAM/SQL.
This CLI call requires the DELETE and SELECT privileges for the BLOB table, as well as the UPDATE privilege for the slice_val column of the BLOB table.
CLI declaration in C:
void SQL_BLOB_OBJ_DROP( char const *REFvalue ,char const *CatalogId ,struct SQLda_t *SQLda);
CLI declaration in COBOL:
IDENTIFICATION DIVISION. PROGRAM-ID. SQLbodr IS PROTOTYPE. DATA DIVISION. LINKAGE SECTION. 01 REFvalue PIC X(237). 01 CatalogId PIC X(31). COPY SQLCA. *> for group item SQLda. PROCEDURE DIVISION USING REFvalue, CatalogId, SQLda. END PROGRAM SQLbodr.
REFvalue
The REF value of the BLOB. The exact structure of REF values is described on "Column definitions".
CatalogId
Unqualified name of the database in which the table is located. CatalogId
is an unqualified name (see section "Unqualified names"). If necessary, this name must be padded with blanks up to a length of 31 characters or terminated with a null byte. If you wish to use the default database name, simply enter a null byte or a string of blanks instead of the database name.
SQLda
Diagnostics area.