There are a few special considerations for loading partitioned tables:
When you modify a partitioned table, you can achieve the best performance when the partitioning column is the first column in the column list of the command.
List partitioning columns before large object (LOB) columns in the SELECT statement clause of an INSERT...LOCATION statement and load data from a primary file. If possible, use a preload process to rearrange data in the primary file.
The START ROW ID clause of the LOAD TABLE and the INSERT statements is not allowed on a partitioned table. The following error is reported and a rollback is performed on the load operation:
"Option START ROW ID not allowed on a partitioned table."
(SQLCODE -1009416L, SQLSTATE QCB14, Sybase error code 21054)
The APPEND_LOAD database option behaves differently for partitioned and unpartitioned tables. Row ID ranges are assigned to each partition.
For partitioned tables, when APPEND_LOAD is ON, new rows are appended at the end of the appropriate partition. When APPEND_LOAD is OFF, the load reuses the first available row IDs and space from deleted rows of the appropriate partition.
For non-partitioned tables, when APPEND_LOAD is ON, new rows are added after the maximum row ID that is at the end of the table rows. When APPEND_LOAD is OFF, the load reuses the deleted row IDs. You can also use the LOAD or INSERT START ROW ID clause to specify the row at which to start inserting.
Attempting to update the contents of a partitioning column results in the following error:
"Updating partition key column on a partitioned table is not allowed."
(SQLCODE -1009417L, SQLSTATE QCB15, Sybase error code 21055)
Table partitioning is part of the separately licensed Sybase IQ VLDB Management option.