aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters')
-rwxr-xr-xactiverecord/lib/active_record/connection_adapters/abstract_adapter.rb2
-rw-r--r--activerecord/lib/active_record/connection_adapters/db2_adapter.rb13
2 files changed, 7 insertions, 8 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb b/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
index 163925df42..6eda3c0624 100755
--- a/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
@@ -323,6 +323,8 @@ module ActiveRecord
when String
if column && column.type == :binary
"'#{quote_string(column.string_to_binary(value))}'" # ' (for ruby-mode)
+ elsif column && [:integer, :float].include?(column.type)
+ value.to_s
else
"'#{quote_string(value)}'" # ' (for ruby-mode)
end
diff --git a/activerecord/lib/active_record/connection_adapters/db2_adapter.rb b/activerecord/lib/active_record/connection_adapters/db2_adapter.rb
index 232764e37c..a80a227a6d 100644
--- a/activerecord/lib/active_record/connection_adapters/db2_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/db2_adapter.rb
@@ -28,7 +28,7 @@ begin
end
module ConnectionAdapters
- # The DB2 adapter works with the C-based CLI driver (http://raa.ruby-lang.org/project/ruby-db2/).
+ # The DB2 adapter works with the C-based CLI driver (http://rubyforge.org/projects/ruby-dbi/)
#
# Options:
#
@@ -91,12 +91,9 @@ begin
string.gsub(/'/, "''") # ' (for ruby-mode)
end
- def add_limit_with_offset!(sql, limit, offset)
- raise ArgumentError, 'add_limit_with_offset! not implemented'
- end
-
- def add_limit_without_offset!(sql, limit)
- sql << " FETCH FIRST #{limit} ROWS ONLY"
+ def add_limit_offset!(sql, options)
+ sql << " FETCH FIRST #{options[:limit]} ROWS ONLY" if options[:limit] and !options[:limit].nil?
+ raise ArgumentError, 'add_limit_offset! not implemented.' if options[:offset] and !options[:offset].nil?
end
def columns(table_name, name = nil)
@@ -128,7 +125,7 @@ begin
stmt = nil
log(sql, name) do
stmt = DB2::Statement.new(@connection)
- stmt.exec_direct("#{sql} with ur")
+ stmt.exec_direct("#{sql.gsub(/=\s*null/i, 'IS NULL')} with ur")
end
rows = []