Class: ActiveRecord::ConnectionAdapters::SQLiteAdapter
Overview
Instance Method Summary
collapse
#add_limit!, #initialize, #quote, #reset_runtime, #structure_dump, #transaction
Instance Method Details
#begin_db_transaction ⇒ Object
98
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 98
def begin_db_transaction() execute "BEGIN" end
|
#columns(table_name, name = nil) ⇒ Object
60
61
62
63
64
65
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 60
def columns(table_name, name = nil)
table_structure(table_name).inject([]) do |columns, field|
columns << SQLiteColumn.new(field['name'], field['dflt_value'], field['type'])
columns
end
end
|
#commit_db_transaction ⇒ Object
99
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 99
def commit_db_transaction() execute "COMMIT" end
|
#delete(sql, name = nil) ⇒ Object
92
93
94
95
96
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 92
def delete(sql, name = nil)
sql += " WHERE 1=1" unless sql =~ /WHERE/i
execute(sql, name)
@connection.changes
end
|
#execute(sql, name = nil) ⇒ Object
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 72
def execute(sql, name = nil)
log(sql, name, @connection) do |connection|
if defined?( SQLite::Version )
case sql
when "BEGIN" then connection.transaction
when "COMMIT" then connection.commit
when "ROLLBACK" then connection.rollback
else connection.execute(sql)
end
else
connection.execute( sql )
end
end
end
|
#insert(sql, name = nil, pk = nil, id_value = nil) ⇒ Object
67
68
69
70
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 67
def insert(sql, name = nil, pk = nil, id_value = nil)
execute(sql, name = nil)
id_value || @connection.send( defined?( SQLite::Version ) ? :last_insert_row_id : :last_insert_rowid )
end
|
#quote_column_name(name) ⇒ Object
106
107
108
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 106
def quote_column_name(name)
return "'#{name}'"
end
|
#quote_string(s) ⇒ Object
102
103
104
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 102
def quote_string(s)
SQLite::Database.quote(s)
end
|
#rollback_db_transaction ⇒ Object
100
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 100
def rollback_db_transaction() execute "ROLLBACK" end
|
#select_all(sql, name = nil) ⇒ Object
51
52
53
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 51
def select_all(sql, name = nil)
select(sql, name)
end
|
#select_one(sql, name = nil) ⇒ Object
55
56
57
58
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 55
def select_one(sql, name = nil)
result = select(sql, name)
result.nil? ? nil : result.first
end
|
#update(sql, name = nil) ⇒ Object
87
88
89
90
|
# File 'lib/active_record/connection_adapters/sqlite_adapter.rb', line 87
def update(sql, name = nil)
execute(sql, name)
@connection.changes
end
|