limit_dialect accessor for DBIC::Abstract
Matt S Trout [Fri, 27 Jan 2006 14:26:41 +0000 (14:26 +0000)]
README
lib/DBIx/Class.pm
lib/DBIx/Class/Manual/Cookbook.pod
lib/DBIx/Class/Relationship/Base.pm
lib/DBIx/Class/Storage/DBI.pm

diff --git a/README b/README
index de87f30..ef34f92 100644 (file)
--- a/README
+++ b/README
@@ -97,6 +97,12 @@ CONTRIBUTORS
 
     Todd Lipcon
 
+    Daniel Westermann-Clark <danieltwc@cpan.org>
+
+    Alexander Hartmaier <alex_hartmaier@hotmail.com>
+
+    Zbigniew Lukasiak
+
 LICENSE
     You may distribute this code under the same terms as Perl itself.
 
index 84fc24a..51e56bd 100644 (file)
@@ -141,6 +141,8 @@ Zbigniew Lukasiak
 
 Nigel Metheringham <nigelm@cpan.org>
 
+Jesper Krogh
+
 =head1 LICENSE
 
 You may distribute this code under the same terms as Perl itself.
index c22e947..2a8d17b 100644 (file)
@@ -560,4 +560,18 @@ database schema:
 
 The schema update can be deployed to customers using the same method as before.
 
+=head2 Setting limit dialect for SQL::Abstract::Limit
+
+In some cases, SQL::Abstract::Limit cannot determine the dialect of the remote
+SQL-server by looking at the database-handle. This is a common problem when
+using the DBD::JDBC, since the DBD-driver only know that in has a Java-driver
+available, not which JDBC-driver the Java component has loaded.
+This specifically sets the limit_dialect to Microsoft SQL-server (Se more names
+in SQL::Abstract::Limit -documentation.
+
+  __PACKAGE__->storage->sql_maker->limit_dialect('mssql');
+
+The JDBC-bridge is one way of getting access to a MSSQL-server from a platform
+that Microsoft doesn't deliver native client libraries for. (e.g. Linux)
+
 =cut
index c97635e..d10a7db 100644 (file)
@@ -108,7 +108,7 @@ sub search_related {
 
 =head2 count_related
 
-  My::Table->count_related('relname', $cond, $attrs);
+  $obj->count_related('relname', $cond, $attrs);
 
 =cut
 
index 37547d2..47f88df 100644 (file)
@@ -132,6 +132,16 @@ sub _quote {
   return $self->SUPER::_quote($label);
 }
 
+# Accessor for setting limit dialect. This is useful
+# for JDBC-bridge among others where the remote SQL-dialect cannot
+# be determined by the name of the driver alone.
+#
+sub limit_dialect {
+    my $self = shift;
+    $self->{limit_dialect} = shift if @_;
+    return $self->{limit_dialect};
+}
+
 } # End of BEGIN block
 
 use base qw/DBIx::Class/;