Module Sequel::MySQL::DatabaseMethods
In: lib/sequel/adapters/shared/mysql.rb

Methods shared by Database instances that connect to MySQL, currently supported by the native and JDBC adapters.

Methods

server_version   tables   use  

Constants

AUTO_INCREMENT = 'AUTO_INCREMENT'.freeze
NOT_NULL = Sequel::Database::NOT_NULL
NULL = Sequel::Database::NULL
PRIMARY_KEY = Sequel::Database::PRIMARY_KEY
TYPES = Sequel::Database::TYPES.merge(DateTime=>'datetime', \ TrueClass=>'tinyint', FalseClass=>'tinyint')
UNIQUE = Sequel::Database::UNIQUE
UNSIGNED = Sequel::Database::UNSIGNED

Public Instance methods

Get version of MySQL server, used for determined capabilities.

[Source]

    # File lib/sequel/adapters/shared/mysql.rb, line 27
27:       def server_version
28:         m = /(\d+)\.(\d+)\.(\d+)/.match(get(SQL::Function.new(:version)))
29:         @server_version ||= (m[1].to_i * 10000) + (m[2].to_i * 100) + m[3].to_i
30:       end

Return an array of symbols specifying table names in the current database.

Options:

  • :server - Set the server to use

[Source]

    # File lib/sequel/adapters/shared/mysql.rb, line 36
36:       def tables(opts={})
37:         ds = self['SHOW TABLES'].server(opts[:server])
38:         ds.identifier_output_method = nil
39:         ds2 = dataset
40:         ds.map{|r| ds2.send(:output_identifier, r.values.first)}
41:       end

Changes the database in use by issuing a USE statement. I would be very careful if I used this.

[Source]

    # File lib/sequel/adapters/shared/mysql.rb, line 45
45:       def use(db_name)
46:         disconnect
47:         @opts[:database] = db_name if self << "USE #{db_name}"
48:         @schemas = nil
49:         self
50:       end

[Validate]