Class: Google::Apis::BigqueryV2::TableFieldSchema

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/bigquery_v2/classes.rb,
generated/google/apis/bigquery_v2/representations.rb,
generated/google/apis/bigquery_v2/representations.rb

Defined Under Namespace

Classes: Categories

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ TableFieldSchema

Returns a new instance of TableFieldSchema



5004
5005
5006
# File 'generated/google/apis/bigquery_v2/classes.rb', line 5004

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#categoriesGoogle::Apis::BigqueryV2::TableFieldSchema::Categories

[Optional] The categories attached to this field, used for field-level access control. Corresponds to the JSON property categories



4970
4971
4972
# File 'generated/google/apis/bigquery_v2/classes.rb', line 4970

def categories
  @categories
end

#descriptionString

[Optional] The field description. The maximum length is 1,024 characters. Corresponds to the JSON property description

Returns:

  • (String)


4975
4976
4977
# File 'generated/google/apis/bigquery_v2/classes.rb', line 4975

def description
  @description
end

#fieldsArray<Google::Apis::BigqueryV2::TableFieldSchema>

[Optional] Describes the nested schema fields if the type property is set to RECORD. Corresponds to the JSON property fields



4981
4982
4983
# File 'generated/google/apis/bigquery_v2/classes.rb', line 4981

def fields
  @fields
end

#modeString

[Optional] The field mode. Possible values include NULLABLE, REQUIRED and REPEATED. The default value is NULLABLE. Corresponds to the JSON property mode

Returns:

  • (String)


4987
4988
4989
# File 'generated/google/apis/bigquery_v2/classes.rb', line 4987

def mode
  @mode
end

#nameString

[Required] The field name. The name must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_), and must start with a letter or underscore. The maximum length is 128 characters. Corresponds to the JSON property name

Returns:

  • (String)


4994
4995
4996
# File 'generated/google/apis/bigquery_v2/classes.rb', line 4994

def name
  @name
end

#typeString

[Required] The field data type. Possible values include STRING, BYTES, INTEGER, INT64 (same as INTEGER), FLOAT, FLOAT64 (same as FLOAT), BOOLEAN, BOOL (same as BOOLEAN), TIMESTAMP, DATE, TIME, DATETIME, RECORD (where RECORD indicates that the field contains a nested schema) or STRUCT (same as RECORD). Corresponds to the JSON property type

Returns:

  • (String)


5002
5003
5004
# File 'generated/google/apis/bigquery_v2/classes.rb', line 5002

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5009
5010
5011
5012
5013
5014
5015
5016
# File 'generated/google/apis/bigquery_v2/classes.rb', line 5009

def update!(**args)
  @categories = args[:categories] if args.key?(:categories)
  @description = args[:description] if args.key?(:description)
  @fields = args[:fields] if args.key?(:fields)
  @mode = args[:mode] if args.key?(:mode)
  @name = args[:name] if args.key?(:name)
  @type = args[:type] if args.key?(:type)
end