TypeCode is used as part of [Type][google.spanner.v1.Type] to
indicate the type of a Cloud Spanner value.
Each legal value of a type can be encoded to or decoded from a JSON
value, using the encodings described below. All Cloud Spanner values can
be null, regardless of type; nulls are always encoded as a JSON
null.
Encoded as list, where the list elements are represented
according to
[array_element_type][google.spanner.v1.Type.array_element_type].
Bool
Encoded as JSON true or false.
Bytes
Encoded as a base64-encoded string, as described in RFC 4648,
section 4.
Date
Encoded as string in RFC 3339 date format.
Float64
Encoded as number, or the strings "NaN", "Infinity", or
"-Infinity".
Int64
Encoded as string, in decimal format.
Json
Encoded as a JSON-formatted 'string' as described in RFC 7159. The
following rules will be applied when parsing JSON input:
Whitespace will be stripped from the document.
If a JSON object has duplicate keys, only the first key will be
preserved.
Members of a JSON object are not guaranteed to have their order
preserved. JSON array elements will have their order preserved.
Numeric
Encoded as string, in decimal format or scientific notation format.
<br>Decimal format:
<br>[+-]Digits[.[Digits]] or
<br>[+-][Digits].Digits
Scientific notation:
<br>[+-]Digits[.[Digits]][ExponentIndicator[+-]Digits] or
<br>[+-][Digits].Digits[ExponentIndicator[+-]Digits]
<br>(ExponentIndicator is "e" or "E")
String
Encoded as string.
Struct
Encoded as list, where list element i is represented according
to [struct_type.fields[i]][google.spanner.v1.StructType.fields].
Timestamp
Encoded as string in RFC 3339 timestamp format. The time zone
must be present, and must be "Z".
If the schema has the column option
allow_commit_timestamp=true, the placeholder string
"spanner.commit_timestamp()" can be used to instruct the system
to insert the commit timestamp associated with the transaction
commit.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-21 UTC."],[[["This page details the `TypeCode` enum within the `Google.Cloud.Spanner.V1` namespace, which is used to define the type of a Cloud Spanner value."],["The latest version of the API is `5.0.0-beta05`, with various older versions available, ranging down to `3.5.0`."],["`TypeCode` supports a variety of data types, including `Array`, `Bool`, `Bytes`, `Date`, `Float64`, `Int64`, `Json`, `Numeric`, `String`, `Struct`, `Timestamp`, and `Unspecified`."],["Each `TypeCode` has a specific JSON encoding format, which is used for representing values in data, such as string, number, list, and base64."],["An extension method, `TypeCodeExtensions.GetOriginalName()`, is available for use with `TypeCode`."]]],[]]