Kinetica C# API
Version 7.2.3.0
|
A set of parameters for Kinetica.updateRecords. More...
Classes | |
struct | Options |
A set of string constants for the parameter options. More... | |
Public Member Functions | |
UpdateRecordsRequest () | |
Constructs an UpdateRecordsRequest object with default parameters. More... | |
UpdateRecordsRequest (string table_name, IList< string > expressions, IList< IDictionary< string, string >> new_values_maps, IList< T > data=null, IDictionary< string, string > options=null) | |
Constructs an UpdateRecordsRequest object with the specified parameters. More... | |
![]() | |
KineticaData (KineticaType type) | |
Constructor from Kinetica Type More... | |
KineticaData (System.Type type=null) | |
Default constructor, with optional System.Type More... | |
object | Get (int fieldPos) |
Retrieve a specific property from this object More... | |
void | Put (int fieldPos, object fieldValue) |
Write a specific property to this object More... | |
Properties | |
string | table_name [get, set] |
Name of table to be updated, in [schema_name. More... | |
IList< string > | expressions = new List<string>() [get, set] |
A list of the actual predicates, one for each update; format should follow the guidelines here. More... | |
IList< IDictionary< string, string > > | new_values_maps = new List<IDictionary<string, string>>() [get, set] |
List of new values for the matching records. More... | |
IList< T > | data = new List<T>() [get, set] |
An optional list of new binary-avro encoded records to insert, one for each update. More... | |
IDictionary< string, string > | options = new Dictionary<string, string>() [get, set] |
Optional parameters. More... | |
![]() | |
Schema | Schema [get] |
Avro Schema for this class More... | |
Additional Inherited Members | |
![]() | |
static ? RecordSchema | SchemaFromType (System.Type t, KineticaType? ktype=null) |
Create an Avro Schema from a System.Type and a KineticaType. More... | |
A set of parameters for Kinetica.updateRecords.
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.
T | The type of object being processed. |
Definition at line 1000 of file UpdateRecords.cs.
|
inline |
Constructs an UpdateRecordsRequest object with default parameters.
Definition at line 1372 of file UpdateRecords.cs.
|
inline |
Constructs an UpdateRecordsRequest object with the specified parameters.
table_name | 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 | A list of the actual predicates, one for each update; format should follow the guidelines here. |
new_values_maps | 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 | An optional list of new binary-avro encoded records to insert, one for each update. If one of expressions does not yield a matching record to be updated, then the corresponding element from this list will be added to the table. The default value is an empty List. |
options | Optional parameters.
|
Definition at line 1598 of file UpdateRecords.cs.
|
getset |
An optional list of new binary-avro encoded records to insert, one for each update.
If one of expressions does not yield a matching record to be updated, then the corresponding element from this list will be added to the table. The default value is an empty List.
Definition at line 1163 of file UpdateRecords.cs.
|
getset |
A list of the actual predicates, one for each update; format should follow the guidelines here.
Definition at line 1147 of file UpdateRecords.cs.
|
getset |
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.
Definition at line 1155 of file UpdateRecords.cs.
|
getset |
Optional parameters.
records_to_insert_str
) 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 new_values_maps taking its place; "insert collisions" will result in the collided-into record being updated with the values in data/records_to_insert_str
(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: The default value is an empty Dictionary.
Definition at line 1368 of file UpdateRecords.cs.
|
getset |
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.
Definition at line 1142 of file UpdateRecords.cs.