Class: DataMapper::Adapters::MysqlAdapter

Inherits:
DataObjectAdapter show all
Defined in:
lib/data_mapper/adapters/mysql_adapter.rb

Defined Under Namespace

Modules: Mappings

Constant Summary

Constants inherited from DataObjectAdapter

DataObjectAdapter::COLUMN_QUOTING_CHARACTER, DataObjectAdapter::FIND_OPTIONS, DataObjectAdapter::TABLE_QUOTING_CHARACTER, DataObjectAdapter::TYPES

Instance Method Summary collapse

Methods inherited from DataObjectAdapter

#activate!, #activated?, #batch_insertable?, #callback, #column_exists_for_table?, #connection, #create, #delete, #execute, #flush_connections!, #get, #handle_error, inherited, #initialize, #load, #query, #save, #save_without_validation, #schema, #table, #transaction, #update

Methods inherited from AbstractAdapter

#delete, #get, #index_path, #initialize, #load, #logger, #name, #save

Constructor Details

This class inherits a constructor from DataMapper::Adapters::DataObjectAdapter

Instance Method Details

#create_connectionObject



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/data_mapper/adapters/mysql_adapter.rb', line 21

def create_connection
  
  connection_string = ""
  builder = lambda { |k,v| connection_string << "#{k}=#{@configuration.send(v)} " unless @configuration.send(v).blank? }
  
  builder['host', :host]
  builder['user', :username]
  builder['password', :password]
  builder['dbname', :database]
  builder['socket', :socket]
  
  logger.debug { connection_string.strip }
  
  conn = DataObject::Mysql::Connection.new(connection_string.strip)
  conn.logger = self.logger
  conn.open
  cmd = conn.create_command("SET NAMES UTF8")
  cmd.execute_non_query
  return conn
end

#database_column_nameObject



42
43
44
# File 'lib/data_mapper/adapters/mysql_adapter.rb', line 42

def database_column_name
  "TABLE_SCHEMA"
end