Title: [1023] trunk/activerecord-jdbc: Added an optional config key called : dialect.
Revision
1023
Author
kofno
Date
2008-06-09 23:47:05 -0400 (Mon, 09 Jun 2008)

Log Message

Added an optional config key called :dialect. Using :dialect allows you
to override the default SQL dialect for the driver class being used.
There are a few cases for this:

  * Using using Sybase w/ the jTDS driver.
  * Using rebranded drivers.
  * It makes more sense to use :dialect, rather then :driver when using
JNDI.

Modified Paths

Diff

Modified: trunk/activerecord-jdbc/Rakefile (1022 => 1023)


--- trunk/activerecord-jdbc/Rakefile	2008-06-07 03:43:18 UTC (rev 1022)
+++ trunk/activerecord-jdbc/Rakefile	2008-06-10 03:47:05 UTC (rev 1023)
@@ -89,6 +89,12 @@
   t.libs << 'test'
 end
 
+# Tests for JDBC adapters that don't require a database.
+Rake::TestTask.new(:test_jdbc_adapters) do | t |
+  t.test_files = FileList[ 'test/jdbc_adapter/jdbc_sybase_test.rb' ]
+  t.libs << 'test'
+end
+
 MANIFEST = FileList["History.txt", "Manifest.txt", "README.txt", 
   "Rakefile", "LICENSE.txt", "lib/**/*.rb", "lib/jdbc_adapter/jdbc_adapter_internal.jar", "test/**/*.rb",
    "lib/**/*.rake", "src/**/*.java"]

Modified: trunk/activerecord-jdbc/lib/active_record/connection_adapters/jdbc_adapter.rb (1022 => 1023)


--- trunk/activerecord-jdbc/lib/active_record/connection_adapters/jdbc_adapter.rb	2008-06-07 03:43:18 UTC (rev 1022)
+++ trunk/activerecord-jdbc/lib/active_record/connection_adapters/jdbc_adapter.rb	2008-06-10 03:47:05 UTC (rev 1023)
@@ -269,9 +269,9 @@
         h[val[0]] = val[1]; h }
 
       def initialize(config, name, default, *args)
-        ds = config[:driver].to_s
+        dialect = config[:dialect] || config[:driver]
         for reg, func in COLUMN_TYPES
-          if reg === ds
+          if reg === dialect.to_s
             func.call(config,self)
           end
         end
@@ -445,9 +445,9 @@
       def initialize(connection, logger, config)
         super(connection, logger)
         @config = config
-        ds = config[:driver].to_s
+        dialect = config[:dialect] || config[:driver]
         for reg, func in ADAPTER_TYPES
-          if reg === ds
+          if reg === dialect.to_s
             func.call(@config,self)
           end
         end
_______________________________________________
Jruby-extras-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/jruby-extras-devel

Reply via email to