Class TypeCode (3.42.0)


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; null\ s are always encoded as a JSON null.

Values: TYPE_CODE_UNSPECIFIED (0): Not specified. BOOL (1): Encoded as JSON true or false. INT64 (2): Encoded as string, in decimal format. FLOAT64 (3): Encoded as number, or the strings "NaN", "Infinity", or "-Infinity". FLOAT32 (15): Encoded as number, or the strings "NaN", "Infinity", or "-Infinity". TIMESTAMP (4): 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.
DATE (5):
    Encoded as `string` in RFC 3339 date format.
    Encoded as `string`.
BYTES (7):
    Encoded as a base64-encoded `string`, as described in RFC
    4648, section 4.
ARRAY (8):
    Encoded as `list`, where the list elements are represented
    according to
    Encoded as `list`, where list element `i` is represented
    according to
    Encoded as `string`, in decimal format or scientific
    notation format. Decimal format: \ `[+-]Digits[.[Digits]]`
    or \ `[+-][Digits].Digits`

    Scientific notation:
    \ `[+-]Digits[.[Digits]][ExponentIndicator[+-]Digits]` or
    \ `[+-][Digits].Digits[ExponentIndicator[+-]Digits]`
    (ExponentIndicator is `"e"` or `"E"`)
JSON (11):
    Encoded as a JSON-formatted `string` as described in RFC
    7159. The following rules are applied when parsing JSON

    -  Whitespace characters are not preserved.
    -  If a JSON object has duplicate keys, only the first key
       is preserved.
    -  Members of a JSON object are not guaranteed to have their
       order preserved.
    -  JSON array elements will have their order preserved.
PROTO (13):
    Encoded as a base64-encoded `string`, as described in RFC
    4648, section 4.
ENUM (14):
    Encoded as `string`, in decimal format.