abstract class Athena::ORM::Platforms::AbstractMySQL
inherits Athena::ORM::Platforms::Platform
#
Base platform for MySQL-like platforms.
Connections from the mysql driver shard use AORM::Platforms::Maria or AORM::Platforms::MySQL, depending on whether the driver reports the server as MariaDB (DB::Connection#server_name).
Identifiers are quoted with backticks.
Direct known subclasses
Athena::ORM::Platforms::Maria
Athena::ORM::Platforms::MySQL
Methods#
#big_int_type_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as a big (8 byte) integer column.
#blob_type_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as a binary large object column.
#boolean_type_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as a boolean column.
#date_time_type_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as a date and time column without a time zone.
#decimal_type_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as an exact numeric column, e.g. NUMERIC(10, 2).
Raises if column has no precision or scale.
#float_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as a double precision floating point column.
#integer_type_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as an integer (4 byte) column.
#quote_single_identifier(identifier : String) : String#
Returns identifier quoted for use as a table or column name.
By default, identifiers are wrapped in double quotes, with any embedded double quotes doubled.
MySQL and MariaDB wrap identifiers in backticks instead, with any embedded backticks doubled.
#small_float_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as a single precision floating point column.
#small_int_type_declaration_sql(column : Schema::Column) : String#
Returns the SQL declaring column as a small (2 byte) integer column.