public static final class RawUpdateRecordsRequest.Options extends Object
Modifier and Type | Field and Description | ||
---|---|---|---|
static String |
BYPASS_SAFETY_CHECKS
When set to
TRUE , all predicates are available
for primary key updates. |
||
static String |
FALSE |
||
static String |
GLOBAL_EXPRESSION
An optional global expression to reduce the search space of the
predicates listed in
expressions . |
||
static String |
IGNORE_EXISTING_PK
Specifies the record collision error-suppression policy for updating
a table with a
static String RECORD_ID
ID of a single record to be updated (returned in the call to
GPUdb.insertRecordsRaw or GPUdb.getRecordsFromCollectionRaw ). | ||
static String |
TRUE |
||
static String |
TRUNCATE_STRINGS
If set to
TRUE , any strings which are too long
for their charN string fields will be truncated to fit. |
||
static String |
UPDATE_ON_EXISTING_PK
Specifies the record collision policy for updating a table with a
static String UPDATE_PARTITION
Force qualifying records to be deleted and reinserted so their
partition membership will be reevaluated.
| ||
static String |
USE_EXPRESSIONS_IN_NEW_VALUES_MAPS
When set to
TRUE , all new values in newValuesMaps are considered as expression
values. |
public static final String GLOBAL_EXPRESSION
expressions
. The
default value is ''.public static final String BYPASS_SAFETY_CHECKS
TRUE
, all predicates are available
for primary key updates. Keep in mind that it is possible to
destroy data in this case, since a single predicate may match
multiple objects (potentially all of records of a table), and then
updating all of those records to have the same primary key will, due
to the primary key uniqueness constraints, effectively delete all
but one of those updated records.
Supported values:
The default value is FALSE
.public static final String TRUE
public static final String FALSE
public static final String UPDATE_ON_EXISTING_PK
The first is an "update collision", which happens when the update changes the value of the updated record's primary key, and that new primary key already exists as the primary key of another record in the table.
The second is an "insert collision", which occurs when a given
filter in expressions
finds no records to
update, and the alternate insert record given in recordsToInsert
(or recordsToInsertStr
) contains a primary key
matching that of an existing record in the table.
If UPDATE_ON_EXISTING_PK
is
set to TRUE
, "update collisions" will result in
the existing record collided into being removed and the record
updated with values specified in newValuesMaps
taking its place; "insert collisions" will result in
the collided-into record being updated with the values in recordsToInsert
/recordsToInsertStr
(if given).
If set to FALSE
, the existing collided-into
record will remain unchanged, while the update will be rejected and
the error handled as determined by IGNORE_EXISTING_PK
. If the specified table does not have a primary
key, then this option has no effect.
Supported values:
TRUE
: Overwrite the collided-into
record when updating a record's primary key or inserting an
alternate record causes a primary key collision between the
record being updated/inserted and another existing record in
the table
FALSE
: Reject updates which cause
primary key collisions between the record being
updated/inserted and an existing record in the table
FALSE
.public static final String IGNORE_EXISTING_PK
UPDATE_ON_EXISTING_PK
is FALSE
). If set to
TRUE
, any record update that is rejected for
resulting in a primary key collision with an existing table record
will be ignored with no error generated. If FALSE
, the rejection of any update for resulting in a primary key
collision will cause an error to be reported. If the specified
table does not have a primary key or if UPDATE_ON_EXISTING_PK
is TRUE
, then this option has no effect.
Supported values:
TRUE
: Ignore updates that result in
primary key collisions with existing records
FALSE
: Treat as errors any updates
that result in primary key collisions with existing records
FALSE
.public static final String UPDATE_PARTITION
FALSE
.public static final String TRUNCATE_STRINGS
TRUE
, any strings which are too long
for their charN string fields will be truncated to fit.
Supported values:
The default value is FALSE
.public static final String USE_EXPRESSIONS_IN_NEW_VALUES_MAPS
TRUE
, all new values in newValuesMaps
are considered as expression
values. When set to FALSE
, all new values in
newValuesMaps
are considered as
constants. NOTE: When TRUE
, string constants
will need to be quoted to avoid being evaluated as expressions.
Supported values:
The default value is FALSE
.public static final String RECORD_ID
GPUdb.insertRecordsRaw
or GPUdb.getRecordsFromCollectionRaw
).Copyright © 2025. All rights reserved.