Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Ensure that mysql quotes table names with database names correctly. C…

…loses #9911 [crayz]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7980 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information...
commit 7042163d7633c1d453bcbed127d42ea27da6b939 1 parent c9fecf2
@technoweenie technoweenie authored
View
4 activerecord/CHANGELOG
@@ -1,5 +1,9 @@
*SVN*
+* Ensure that mysql quotes table names with database names correctly. Closes #9911 [crayz]
+
+ "foo.bar" => "`foo`.`bar`"
+
* Complete the assimilation of Sexy Migrations from ErrFree [Chris Wanstrath, PJ Hyett]
http://errtheblog.com/post/2381
View
2  activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
@@ -209,7 +209,7 @@ def quote_column_name(name) #:nodoc:
end
def quote_table_name(name) #:nodoc:
- quote_column_name(name)
+ quote_column_name(name).gsub('.', '`.`')
end
def quote_string(string) #:nodoc:
View
4 activerecord/test/active_schema_test_mysql.rb
@@ -32,6 +32,10 @@ def test_add_column_with_limit
assert_equal "ALTER TABLE `people` ADD `key` varchar(32)", add_column(:people, :key, :string, :limit => 32)
end
+ def test_drop_table_with_specific_database
+ assert_equal "DROP TABLE `otherdb`.`people`", drop_table('otherdb.people')
+ end
+
private
def method_missing(method_symbol, *arguments)
ActiveRecord::Base.connection.send(method_symbol, *arguments)
Please sign in to comment.
Something went wrong with that request. Please try again.