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"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis webpage details the \u003ccode\u003eTypeCode\u003c/code\u003e enum within the Google.Cloud.Spanner.V1 namespace, used to specify the type of Cloud Spanner values, and shows a list of all the versions of this class, ranging from 3.5.0 to 5.0.0-beta05.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTypeCode\u003c/code\u003e enum supports various data types such as \u003ccode\u003eArray\u003c/code\u003e, \u003ccode\u003eBool\u003c/code\u003e, \u003ccode\u003eBytes\u003c/code\u003e, \u003ccode\u003eDate\u003c/code\u003e, \u003ccode\u003eFloat64\u003c/code\u003e, \u003ccode\u003eInt64\u003c/code\u003e, \u003ccode\u003eJson\u003c/code\u003e, \u003ccode\u003eNumeric\u003c/code\u003e, \u003ccode\u003eString\u003c/code\u003e, \u003ccode\u003eStruct\u003c/code\u003e, and \u003ccode\u003eTimestamp\u003c/code\u003e, each with specific JSON encoding rules.\u003c/p\u003e\n"],["\u003cp\u003eAll Cloud Spanner values can be \u003ccode\u003enull\u003c/code\u003e, represented as a JSON \u003ccode\u003enull\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eA list of \u003ccode\u003eFields\u003c/code\u003e with their \u003ccode\u003eName\u003c/code\u003e and \u003ccode\u003eDescription\u003c/code\u003e shows how the types are represented and encoded, specifying the format for each type.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eGetOriginalName()\u003c/code\u003e extension method on \u003ccode\u003eTypeCodeExtensions\u003c/code\u003e is available to help with handling the various \u003ccode\u003eTypeCode\u003c/code\u003e enumerations.\u003c/p\u003e\n"]]],[],null,[]]