Class: QueryBuilder::CQL::Contexts::Table

Inherits:
Base
  • Object
show all
Defined in:
lib/query_builder/cql/contexts/table.rb

Overview

Describes the Cassandra table

Instance Method Summary collapse

Instance Method Details

#alter(options) ⇒ QueryBuilder::Statements::AlterTable

Builds the ‘ALTER TABLE’ CQL statement to modify properties (WITH)

Parameters:

  • options (Hash)

Returns:

  • (QueryBuilder::Statements::AlterTable)


76
77
78
# File 'lib/query_builder/cql/contexts/table.rb', line 76

def alter(options)
  Statements::AlterTable.new(context: self).alter(options)
end

#column(name) ⇒ QueryBuilder::CQL::Contexts::Column

Returns the column context

Parameters:

Returns:



48
49
50
# File 'lib/query_builder/cql/contexts/table.rb', line 48

def column(name)
  Column.new(table: self, name: name)
end

#createQueryBuilder::Statements::CreateTable

Builds the ‘CREATE TABLE’ CQL statement

Returns:

  • (QueryBuilder::Statements::CreateTable)


66
67
68
# File 'lib/query_builder/cql/contexts/table.rb', line 66

def create
  Statements::CreateTable.new(context: self)
end

#delete(*columns) ⇒ QueryBuilder::Statements::Delete

Builds the ‘DELETE’ CQL statement

Parameters:

Returns:

  • (QueryBuilder::Statements::Delete)


124
125
126
# File 'lib/query_builder/cql/contexts/table.rb', line 124

def delete(*columns)
  Statements::Delete.new(context: self).delete(*columns)
end

#dropQueryBuilder::Statements::DropTable

Builds the ‘DROP TABLE’ CQL statement

Returns:

  • (QueryBuilder::Statements::DropTable)


84
85
86
# File 'lib/query_builder/cql/contexts/table.rb', line 84

def drop
  Statements::DropTable.new(context: self)
end

#index(name = nil) ⇒ QueryBuilder::CQL::Contexts::Index

Returns the index context

Parameters:

  • name (#to_s) (defaults to: nil)

Returns:



28
29
30
# File 'lib/query_builder/cql/contexts/table.rb', line 28

def index(name = nil)
  Index.new(table: self, name: name)
end

#insert(options = {}) ⇒ QueryBuilder::Statements::Insert

Builds the ‘INSERT’ CQL statement

Parameters:

  • options (Hash) (defaults to: {})

Returns:

  • (QueryBuilder::Statements::Insert)


94
95
96
# File 'lib/query_builder/cql/contexts/table.rb', line 94

def insert(options = {})
  Statements::Insert.new(context: self).insert(options)
end

#permission(name = nil) ⇒ Object

Returns the context of Cassandra table permission

Parameters:



58
59
60
# File 'lib/query_builder/cql/contexts/table.rb', line 58

def permission(name = nil)
  Contexts::Permission.new(table: self, name: name)
end

#select(*values) ⇒ QueryBuilder::Statements::Insert

Builds the ‘SELECT’ CQL statement

Parameters:

  • values (Array<#to_s>, Hash, nil)

Returns:

  • (QueryBuilder::Statements::Insert)


104
105
106
# File 'lib/query_builder/cql/contexts/table.rb', line 104

def select(*values)
  Statements::Select.new(context: self).select(*values)
end

#to_sString

Returns the full name of the table

Returns:

  • (String)


18
19
20
# File 'lib/query_builder/cql/contexts/table.rb', line 18

def to_s
  [keyspace, name].join(".")
end

#trigger(name) ⇒ QueryBuilder::CQL::Contexts::Trigger

Returns the trigger context

Parameters:

Returns:



38
39
40
# File 'lib/query_builder/cql/contexts/table.rb', line 38

def trigger(name)
  Trigger.new(table: self, name: name)
end

#truncateQueryBuilder::Statements::Truncate

Builds the ‘TRUNCATE’ CQL statement

Returns:

  • (QueryBuilder::Statements::Truncate)


132
133
134
# File 'lib/query_builder/cql/contexts/table.rb', line 132

def truncate
  Statements::Truncate.new(context: self)
end

#update(options = {}) ⇒ QueryBuilder::Statements::Update

Builds the ‘UPDATE’ CQL statement

Parameters:

  • options (Hash) (defaults to: {})

Returns:

  • (QueryBuilder::Statements::Update)


114
115
116
# File 'lib/query_builder/cql/contexts/table.rb', line 114

def update(options = {})
  Statements::Update.new(context: self).update(options)
end