Inserts, updates, and deletes using JDBC

Static SQL statements such as INSERT, UPDATE, and DELETE, which do not return result sets, are executed using the executeUpdate
method of the Statement class. Statements, such as CREATE TABLE and other data definition statements, can also be executed
using executeUpdate.

The addBatch, clearBatch, and executeBatch methods of the Statement class may also be used. Due to the fact that the JDBC
specification is unclear on the behavior of the executeBatch method of the Statement class, the following notes should be
considered when using this method with the SQL Anywhere JDBC drivers:

Processing of the batch stops immediately upon encountering a SQL exception or result set. If processing of the batch stops,
then a BatchUpdateException will be thrown by the executeBatch method. Calling the getUpdateCounts method on the BatchUpdateException
will return an integer array of row counts where the set of counts prior to the batch failure will contain a valid non-negative
update count; while all counts at the point of the batch failure and beyond will contain a -1 value. Casting the BatchUpdateException
to a SQLException will provide additional details as to why batch processing was stopped.

The batch is only cleared when the clearBatch method is explicitly called. As a result, calling the executeBatch method repeatedly
will re-execute the batch over and over again. In addition, calling execute(sql_query) or executeQuery(sql_query) will correctly
execute the specified SQL query, but will not clear the underlying batch. Hence, calling the executeBatch method followed
by execute(sql_query) followed by the executeBatch method again will execute the set of batched statements, then execute the
specified SQL query, and then execute the set of batched statements again.

The following code fragment illustrates how to execute an INSERT statement. It uses a Statement object that has been passed
to the InsertStatic method as an argument.