Class: DBConnection

Inherits:
Object
  • Object
show all
Defined in:
lib/easy_save/db_connection.rb

Class Method Summary collapse

Class Method Details

.execute(*args) ⇒ Object



33
34
35
36
# File 'lib/easy_save/db_connection.rb', line 33

def self.execute(*args)
  print_query(*args)
  instance.execute(*args)
end

.execute2(*args) ⇒ Object



38
39
40
41
# File 'lib/easy_save/db_connection.rb', line 38

def self.execute2(*args)
  print_query(*args)
  instance.execute2(*args)
end

.instanceObject



28
29
30
31
# File 'lib/easy_save/db_connection.rb', line 28

def self.instance
  reset if @db.nil?
  @db
end

.last_insert_row_idObject



43
44
45
# File 'lib/easy_save/db_connection.rb', line 43

def self.last_insert_row_id
  instance.last_insert_row_id
end

.open(db_file_name) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/easy_save/db_connection.rb', line 11

def self.open(db_file_name)
  @db = SQLite3::Database.new(db_file_name)
  @db.results_as_hash = true
  @db.type_translation = true

  @db
end

.resetObject



19
20
21
22
23
24
25
26
# File 'lib/easy_save/db_connection.rb', line 19

def self.reset
  commands = []
  commands << "rm '#{USERS_DB_FILE}'" if File.exist?(USERS_DB_FILE)
  commands << "cat '#{USERS_SQL_FILE}' | sqlite3 '#{USERS_DB_FILE}'"

  commands.each { |command| `#{command}` }
  DBConnection.open(USERS_DB_FILE)
end