Module: Google::Cloud::Spanner::V1::TypeCode
- Defined in:
- proto_docs/google/spanner/v1/type.rb
Overview
TypeCode
is used as part of 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
.
Constant Summary collapse
- TYPE_CODE_UNSPECIFIED =
Not specified.
0
- BOOL =
Encoded as JSON
true
orfalse
. 1
- INT64 =
Encoded as
string
, in decimal format. 2
- FLOAT64 =
Encoded as
number
, or the strings"NaN"
,"Infinity"
, or"-Infinity"
. 3
- FLOAT32 =
Encoded as
number
, or the strings"NaN"
,"Infinity"
, or"-Infinity"
. 15
- 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. 4
- DATE =
Encoded as
string
in RFC 3339 date format. 5
- STRING =
Encoded as
string
. 6
- BYTES =
Encoded as a base64-encoded
string
, as described in RFC 4648, section 4. 7
- ARRAY =
Encoded as
list
, where the list elements are represented according to array_element_type. 8
- STRUCT =
Encoded as
list
, where list elementi
is represented according to [struct_type.fields[i]][google.spanner.v1.StructType.fields]. 9
- NUMERIC =
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"
) 10
- JSON =
Encoded as a JSON-formatted
string
as described in RFC 7159. The following rules are applied when parsing JSON input:- 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.
11
- PROTO =
Encoded as a base64-encoded
string
, as described in RFC 4648, section 4. 13
- ENUM =
Encoded as
string
, in decimal format. 14
- INTERVAL =
Encoded as
string
, inISO8601
duration format -P[n]Y[n]M[n]DT[n]H[n]M[n[.fraction]]S
wheren
is an integer. For example,P1Y2M3DT4H5M6.5S
represents time duration of 1 year, 2 months, 3 days, 4 hours, 5 minutes, and 6.5 seconds. 16