You update, insert, and delete data in partitioned tables exactly as in unpartitioned tables. The syntax is identical. You cannot specify a partition in update, insert, and delete statements.
In a partitioned table, the data resides on the partitions, and the table becomes a logical union of partitions. The exact partition on which a particular data row is stored is transparent to the user. Adaptive Server determines which partitions are to be accessed through a combination of internal logic and the table’s partitioning strategy.
Adaptive Server aborts any transaction that attempts to insert a row that does not qualify for any of the table’s partitions. In a round-robin– or hash-partitioned table, every row qualifies. In a range- or list-partitioned table, only those rows that meet the partitioning criteria qualify.
For range-partitioned tables – insertions of data rows with values that exceed the upper range defined for the table abort unless the MAX range is specified. If the MAX range is specified, all rows qualify at the upper end.
For list-partitioned tables – insertions of data rows with partition column values that do not match the partitioning criteria fail.
If the partition key column for a data row is updated so that the key column value no longer satisfies the partitioning criteria for any partition, the update aborts. See “Updating values in partition-key columns” for more information.
Copyright © 2005. Sybase Inc. All rights reserved. |