Class: ActiveRecord::ConnectionAdapters::MysqlAdapter
Overview
Instance Method Summary
collapse
#add_limit!, #initialize, #quote, #reset_runtime, #transaction
Instance Method Details
#begin_db_transaction ⇒ Object
78
79
80
81
82
83
84
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 78
def begin_db_transaction
begin
execute "BEGIN"
rescue Exception
end
end
|
#columns(table_name, name = nil) ⇒ Object
52
53
54
55
56
57
58
59
60
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 52
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
86
87
88
89
90
91
92
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 86
def commit_db_transaction
begin
execute "COMMIT"
rescue Exception
end
end
|
#create_database(name) ⇒ Object
121
122
123
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 121
def create_database(name)
execute "CREATE DATABASE #{name}"
end
|
#drop_database(name) ⇒ Object
117
118
119
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 117
def drop_database(name)
execute "DROP DATABASE IF EXISTS #{name}"
end
|
#execute(sql, name = nil) ⇒ Object
67
68
69
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 67
def execute(sql, name = nil)
log(sql, name, @connection) { |connection| connection.query(sql) }
end
|
#insert(sql, name = nil, pk = nil, id_value = nil) ⇒ Object
62
63
64
65
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 62
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
102
103
104
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 102
def quote_column_name(name)
return "`#{name}`"
end
|
#quote_string(s) ⇒ Object
125
126
127
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 125
def quote_string(s)
Mysql::quote(s)
end
|
#recreate_database(name) ⇒ Object
112
113
114
115
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 112
def recreate_database(name)
drop_database(name)
create_database(name)
end
|
#rollback_db_transaction ⇒ Object
94
95
96
97
98
99
100
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 94
def rollback_db_transaction
begin
execute "ROLLBACK"
rescue Exception
end
end
|
#select_all(sql, name = nil) ⇒ Object
43
44
45
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 43
def select_all(sql, name = nil)
select(sql, name)
end
|
#select_one(sql, name = nil) ⇒ Object
47
48
49
50
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 47
def select_one(sql, name = nil)
result = select(sql, name)
result.nil? ? nil : result.first
end
|
#structure_dump ⇒ Object
106
107
108
109
110
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 106
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
71
72
73
74
|
# File 'lib/active_record/connection_adapters/mysql_adapter.rb', line 71
def update(sql, name = nil)
execute(sql, name)
@connection.affected_rows
end
|