aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/mysql/quoting.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/mysql/quoting.rb')
-rw-r--r--activerecord/lib/active_record/connection_adapters/mysql/quoting.rb17
1 files changed, 13 insertions, 4 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/mysql/quoting.rb b/activerecord/lib/active_record/connection_adapters/mysql/quoting.rb
index 84354c0187..740832d6b8 100644
--- a/activerecord/lib/active_record/connection_adapters/mysql/quoting.rb
+++ b/activerecord/lib/active_record/connection_adapters/mysql/quoting.rb
@@ -40,13 +40,22 @@ module ActiveRecord
COLUMN_NAME_WITH_ORDER
end
- COLUMN_NAME = /\A(?:(`?)\w+\k<1>\.)?(`?)\w+\k<2>\z/i
+ COLUMN_NAME = /
+ \A
+ (
+ (?:\w+\.|`\w+`\.)?(?:\w+|`\w+`)
+ )
+ (?:\s*,\s*\g<1>)*
+ \z
+ /ix
COLUMN_NAME_WITH_ORDER = /
\A
- (?:(`?)\w+\k<1>\.)?
- (`?)\w+\k<2>
- (?:\s+ASC|\s+DESC)?
+ (
+ (?:\w+\.|`\w+`\.)?(?:\w+|`\w+`)
+ (?:\s+ASC|\s+DESC)?
+ )
+ (?:\s*,\s*\g<1>)*
\z
/ix