diff --git a/lib/active_record/connection_adapters/sqlserver/database_statements.rb b/lib/active_record/connection_adapters/sqlserver/database_statements.rb index 0b6f95ec2..3b9efbf3d 100644 --- a/lib/active_record/connection_adapters/sqlserver/database_statements.rb +++ b/lib/active_record/connection_adapters/sqlserver/database_statements.rb @@ -325,7 +325,7 @@ def sp_executesql_types_and_parameters(binds) end def sp_executesql_sql_type(attr) - return "nvarchar(max)".freeze if attr.is_a?(Symbol) + return "nvarchar(max)".freeze if attr.is_a?(Symbol) || attr.is_a?(String) return attr.type.sqlserver_type if attr.type.respond_to?(:sqlserver_type) case value = attr.value_for_database @@ -337,7 +337,7 @@ def sp_executesql_sql_type(attr) end def sp_executesql_sql_param(attr) - return quote(attr) if attr.is_a?(Symbol) + return quote(attr) if attr.is_a?(Symbol) || attr.is_a?(String) case value = attr.value_for_database when Type::Binary::Data,