Module: Sequel::Spark::DatabaseMethods

Includes:
UnmodifiedIdentifiers::DatabaseMethods
Included in:
Hexspace::Database
Defined in:
lib/sequel/adapters/shared/spark.rb

Instance Method Summary collapse

Instance Method Details

#create_schema(schema_name, opts = OPTS) ⇒ Object



12
13
14
# File 'lib/sequel/adapters/shared/spark.rb', line 12

def create_schema(schema_name, opts=OPTS)
  run(create_schema_sql(schema_name, opts))
end

#database_typeObject



16
17
18
# File 'lib/sequel/adapters/shared/spark.rb', line 16

def database_type
  :spark
end

#drop_schema(schema_name, opts = OPTS) ⇒ Object



20
21
22
# File 'lib/sequel/adapters/shared/spark.rb', line 20

def drop_schema(schema_name, opts=OPTS)
  run(drop_schema_sql(schema_name, opts))
end

#serial_primary_key_optionsObject

Spark does not support primary keys, so do not add any options



26
27
28
29
30
# File 'lib/sequel/adapters/shared/spark.rb', line 26

def serial_primary_key_options
  # We could raise an exception here instead of just
  # ignoring the primary key setting.
  {:type=>Integer}
end

#supports_create_table_if_not_exists?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'lib/sequel/adapters/shared/spark.rb', line 32

def supports_create_table_if_not_exists?
  true
end

#tables(opts = OPTS) ⇒ Object



36
37
38
# File 'lib/sequel/adapters/shared/spark.rb', line 36

def tables(opts=OPTS)
  _mangle_tables(_tables("TABLES", :tableName, opts) - _views(opts), opts)
end

#transaction(opts = nil) ⇒ Object

Spark does not support transactions.



41
42
43
# File 'lib/sequel/adapters/shared/spark.rb', line 41

def transaction(opts=nil)
  yield
end

#values(v) ⇒ Object

Use an inline VALUES table.



46
47
48
# File 'lib/sequel/adapters/shared/spark.rb', line 46

def values(v)
  @default_dataset.clone(:values=>v)
end

#views(opts = OPTS) ⇒ Object



50
51
52
# File 'lib/sequel/adapters/shared/spark.rb', line 50

def views(opts=OPTS)
  _mangle_tables(_views(opts), opts)
end