Class: ActiveRecord::ConnectionAdapters::MysqlAdapter
Overview
Instance Method Summary
collapse
#add_limit!, #initialize, #quote, #reset_runtime, #transaction
Instance Method Details
#begin_db_transaction ⇒ Object
77
78
79
80
81
82
83
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 77
def begin_db_transaction
begin
execute "BEGIN"
rescue Exception
end
end
|
#columns(table_name, name = nil) ⇒ Object
51
52
53
54
55
56
57
58
59
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 51
def columns(table_name, name = nil)
sql = "SHOW FIELDS FROM #{table_name}"
result = nil
log(sql, name, @connection) { |connection| result = connection.query(sql) }
columns = []
result.each { |field| columns << Column.new(field[0], field[4], field[1]) }
columns
end
|
#commit_db_transaction ⇒ Object
85
86
87
88
89
90
91
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 85
def commit_db_transaction
begin
execute "COMMIT"
rescue Exception
end
end
|
#create_database(name) ⇒ Object
120
121
122
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 120
def create_database(name)
execute "CREATE DATABASE #{name}"
end
|
#drop_database(name) ⇒ Object
116
117
118
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 116
def drop_database(name)
execute "DROP DATABASE IF EXISTS #{name}"
end
|
#execute(sql, name = nil) ⇒ Object
66
67
68
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 66
def execute(sql, name = nil)
log(sql, name, @connection) { |connection| connection.query(sql) }
end
|
#insert(sql, name = nil, pk = nil, id_value = nil) ⇒ Object
61
62
63
64
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 61
def insert(sql, name = nil, pk = nil, id_value = nil)
execute(sql, name = nil)
return id_value || @connection.insert_id
end
|
#quote_column_name(name) ⇒ Object
101
102
103
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 101
def quote_column_name(name)
return "`#{name}`"
end
|
#quote_string(s) ⇒ Object
124
125
126
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 124
def quote_string(s)
Mysql::quote(s)
end
|
#recreate_database(name) ⇒ Object
111
112
113
114
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 111
def recreate_database(name)
drop_database(name)
create_database(name)
end
|
#rollback_db_transaction ⇒ Object
93
94
95
96
97
98
99
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 93
def rollback_db_transaction
begin
execute "ROLLBACK"
rescue Exception
end
end
|
#select_all(sql, name = nil) ⇒ Object
42
43
44
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 42
def select_all(sql, name = nil)
select(sql, name)
end
|
#select_one(sql, name = nil) ⇒ Object
46
47
48
49
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 46
def select_one(sql, name = nil)
result = select(sql, name)
result.nil? ? nil : result.first
end
|
#structure_dump ⇒ Object
105
106
107
108
109
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 105
def structure_dump
select_all("SHOW TABLES").inject("") do |structure, table|
structure += select_one("SHOW CREATE TABLE #{table.to_a.first.last}")["Create Table"] + ";\n\n"
end
end
|
#update(sql, name = nil) ⇒ Object
Also known as:
delete
70
71
72
73
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 70
def update(sql, name = nil)
execute(sql, name)
@connection.affected_rows
end
|