diff options
author | Victor Costan <costan@gmail.com> | 2012-10-16 05:53:18 -0400 |
---|---|---|
committer | Victor Costan <costan@gmail.com> | 2012-10-27 13:41:27 -0400 |
commit | 5d30e443908558713cff16cdad4b09e203c8fae8 (patch) | |
tree | 071dcdd7622515bc8c2556e36f2745e5d22a7fe2 /activerecord/lib | |
parent | 028f29dc91cad17ae0634e0973f7ff1b43435466 (diff) | |
download | rails-5d30e443908558713cff16cdad4b09e203c8fae8.tar.gz rails-5d30e443908558713cff16cdad4b09e203c8fae8.tar.bz2 rails-5d30e443908558713cff16cdad4b09e203c8fae8.zip |
Use the MySQL varbinary type when appropriate in migrations.
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb index b0e7bd7e82..2c57b52017 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb @@ -498,6 +498,13 @@ module ActiveRecord # Maps logical Rails types to MySQL-specific data types. def type_to_sql(type, limit = nil, precision = nil, scale = nil) case type.to_s + when 'binary' + case limit + when 0..0xfff; "varbinary(#{limit})" + when nil; "blob" + when 0x1000..0xffffffff; "blob(#{limit})" + else raise(ActiveRecordError, "No binary type has character length #{limit}") + end when 'integer' case limit when 1; 'tinyint' |