update_records
- update_records(
table_name: string,
expressions: string[],
new_values_maps: Record<string, string | null>[],
data: Record<string, any>[],
options?: Record<string, string>,
callback?: GPUdbCallback,
): Promise<UpdateRecordsResponse>Parameters
- table_name: string
Name of table to be updated, in [schema_name.]table_name format, using standard name resolution rules. Must be a currently existing table and not a view.
- expressions: string[]
A list of the actual predicates, one for each update; format should follow the guidelines
filter. - new_values_maps: Record<string, string | null>[]
List of new values for the matching records. Each element is a map with (key, value) pairs where the keys are the names of the columns whose values are to be updated; the values are the new values. The number of elements in the list should match the length of
expressions. - data: Record<string, any>[]
Data records to process
Optionaloptions: Record<string, string>Optional parameters.
Optionalcallback: GPUdbCallbackOptional callback function
Returns Promise<UpdateRecordsResponse>
Promise<Types.UpdateRecordsResponse> - Promise resolving to the response
- Defined in src/GPUdb.ts:14579
- table_name: string
update_records_request
- update_records_request(
request: UpdateRecordsRequest,
callback?: GPUdbCallback,
): Promise<UpdateRecordsResponse>Runs multiple predicate-based updates in a single call. With the list of given expressions, any matching record’s column values will be updated as provided in
new_values_maps. There is also an optional ‘upsert’ capability where if a particular predicate doesn’t match any existing record, then a new record can be inserted.Note that this operation can only be run on an original table and not on a result view.
This operation can update primary key values. By default only ‘pure primary key’ predicates are allowed when updating primary key values. If the primary key for a table is the column ‘attr1’, then the operation will only accept predicates of the form: “attr1 == ‘foo’” if the attr1 column is being updated. For a composite primary key (e.g. columns ‘attr1’ and ‘attr2’) then this operation will only accept predicates of the form: “(attr1 == ‘foo’) and (attr2 == ‘bar’)”. Meaning, all primary key columns must appear in an equality predicate in the expressions. Furthermore each ‘pure primary key’ predicate must be unique within a given request. These restrictions can be removed by utilizing some available options through
options.The update_on_existing_pk option specifies the record primary key collision policy for tables with a primary key, while ignore_existing_pk specifies the record primary key collision error-suppression policy when those collisions result in the update being rejected. Both are ignored on tables with no primary key.
Parameters
- request: UpdateRecordsRequest
Request object containing the parameters for the operation
Optionalcallback: GPUdbCallbackOptional callback function
Returns Promise<UpdateRecordsResponse>
Promise<Types.UpdateRecordsResponse> - Promise resolving to the response
- Defined in src/GPUdb.ts:14517
- request: UpdateRecordsRequest
Runs multiple predicate-based updates in a single call. With the list of given expressions, any matching record’s column values will be updated as provided in
new_values_maps. There is also an optional ‘upsert’ capability where if a particular predicate doesn’t match any existing record, then a new record can be inserted.Note that this operation can only be run on an original table and not on a result view.
This operation can update primary key values. By default only ‘pure primary key’ predicates are allowed when updating primary key values. If the primary key for a table is the column ‘attr1’, then the operation will only accept predicates of the form: “attr1 == ‘foo’” if the attr1 column is being updated. For a composite primary key (e.g. columns ‘attr1’ and ‘attr2’) then this operation will only accept predicates of the form: “(attr1 == ‘foo’) and (attr2 == ‘bar’)”. Meaning, all primary key columns must appear in an equality predicate in the expressions. Furthermore each ‘pure primary key’ predicate must be unique within a given request. These restrictions can be removed by utilizing some available options through
options.The update_on_existing_pk option specifies the record primary key collision policy for tables with a primary key, while ignore_existing_pk specifies the record primary key collision error-suppression policy when those collisions result in the update being rejected. Both are ignored on tables with no primary key.