Hey Hugh, Actually all of the databases on that page that aren't marked with "requires Dialect" already have a Dialect included in the Hibernate core library. This basically means that all of the supported databases have Dialects.
I would say that Hibernate definitely lacks the "intelligence" to figure things out on its own. By examining the code for the Dialects you can get a jist of how it all fits together. Not being someone who's spent any time under the hood with Hibernate it's not a task that I'd like to undertake lightly. I'm betting that the Hibernate team would be a real help in creating such a Dialect and that it would be a big plus in bringing more Java developers into the fold. Chris On Mon, Aug 4, 2008 at 11:31 AM, Hugh Williams <hwilli...@openlinksw.com>wrote: > Hi Chris, > Doesn't Hibernate at least look to deduce answers to these questions via > JDBC metadata calls? JDBC, like ODBC, possesses extensive metadata oriented > APIs that data access clients are really supposed to use in relation to > deducing underlying SQL engine behavior. > > If Hibernate lacks such intelligence (I desperately hope not), then it > might provide us with guidance for an effective solution i.e. a clear layer > for deducing behavior across a JDBC Driver that implements the JDBC metadata > APIs. > > Note also their appear to be many other databases Hibernate has been tested > with for which their is not a specific SQL Dialect plugin as detailed at: > > http://www.hibernate.org/80.html > > Indicating this is not an absolute requirement it would seem. > > Thus I would suggest you try using both products and if any issues are > encountered that you feel are Virtuoso specific do report them and will > shall be glad to assist in resolution ... > > Best Regards > Hugh Williams > Professional Services > OpenLink Software > > > On 4 Aug 2008, at 15:08, Chris Baker wrote: > > Hey Hugh, > > There's no specific problem. I'm just a test first kind of guy and and want > to make sure that something is compatible before committing. The Hibernate > Dialects are mapped to specific vendors not to any standard. Something can > be SQL 99 compliant in many different ways. Hibernate needs to have its hand > held by specifically pointing out how things work, such as joins and > functions etc. > > Since there is no OpenLink Hibernate Dialect that means that I can't be > sure how the technologies will interact. That's a big wild card in my book > and as a developer I don't like wild cards. > > My next step in all this is to reach out to the Hibernate Development list > for some tips on creating such a Dialect. > > thanks for your help > > Chris > > On Mon, Aug 4, 2008 at 8:23 AM, Hugh Williams <hwilli...@openlinksw.com>wrote: > >> Hi Chris, >> Virtuoso is an ANSI SQL (89, 92, 99/SQL3) compliant engine and as such we >> would expect Hibernate to have Standard ANSI SQL Dialect that can be used or >> is probably used by default enabling Virtuoso to be used with it. >> >> Is their a specific problem you are experiencing with the handling of date >> and time data types in reference to your comment below ? >> >> Best Regards >> Hugh Williams >> Professional Services >> OpenLink Software >> >> The user specifically highlights the handling of TIMESTAMP casting as an >> example, thus I shall find out if this in a specific problem being >> encountered in what he is trying to do ... >> >> On 3 Aug 2008, at 20:49, Chris Baker wrote: >> >> Hey Hugh, >> >> JDBC works great. >> >> The secret sauce that gets Hibernate to work is a dialect class that >> abstracts away the specific flavor of SQL for a database vendor. For >> instance how OpenLink manages dates and times through a TIMESTAMP type with >> casting functions. When you set up Hibernate you specify which SQL dialect >> you want to use. I haven't been able to find anything anywhere about >> something like this for Virtuoso. >> >> I'm not sure what the effect would be of just connecting to Hiberate >> without specifying the dialect. The documentation warns you that you need to >> specify one. >> >> As Hibernate is becoming the most popular ways of interacting with >> relational databases in Java, especially now with the JPA standard, I would >> think that a dialect would be a huge plus. >> >> Chris >> >> >> On Sun, Aug 3, 2008 at 9:33 AM, Hugh Williams >> <hwilli...@openlinksw.com>wrote: >> >>> Hi Chris, >>> >>> Can you describe in more detail how your are attempting or would expect >>> to be using hibernate with Virtuoso, which I presume is the >>> object/relational persistence and query service for Java (http:// >>> www.hibernate.org/) ? From tests we have performed with Hibernate in the >>> past their is a binding to JDBC and as Virtuoso has its own JDBC driver >>> their is no specific dialect required for Virtuoso you simply invoke the >>> JDBC Driver for your target database (Virtuoso in this case) and it should >>> work. The Virtuoso JDBC Driver details are: >>> >>> Driver File Name = virtjdbc3.jar (located in ~/libsrc/JDBCType4 of your >>> VOS installation) >>> Driver Class Name = virtuoso.jdbc3.Driver >>> Driver Connect String format = >>> jdbc:virtuoso://<Hostname>:<Port#>/DATABASE=<dbname>/UID=<user >>> name>/PWD=<password>/ >>> >>> Further details on the Virtuoso JDBC Driver can be obtained from: >>> >>> http://docs.openlinksw.com/virtuoso/VirtuosoDriverJDBC.html >>> >>> Please let us know if this helps ... >>> >>> Best Regards >>> Hugh Williams >>> Professional Services >>> OpenLink Software >>> http://www.openlinksw.com >>> >>> >>> On 3 Aug 2008, at 02:24, Chris Baker wrote: >>> >>> Heynow, >>>> >>>> Does anyone know anything about a Hibernate dialect for Virtuoso? >>>> >>>> thanks >>>> >>>> Chris >>>> >>>> ------------------------------------------------------------------------- >>>> This SF.Net email is sponsored by the Moblin Your Move Developer's >>>> challenge >>>> Build the coolest Linux based applications with Moblin SDK & win great >>>> prizes >>>> Grand prize is a trip for two to an Open Source event anywhere in the >>>> world >>>> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >>>> _______________________________________________ >>>> Virtuoso-users mailing list >>>> Virtuoso-users@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/virtuoso-users >>>> >>> >>> >> ------------------------------------------------------------------------- >> This SF.Net email is sponsored by the Moblin Your Move Developer's >> challenge >> Build the coolest Linux based applications with Moblin SDK & win great >> prizes >> Grand prize is a trip for two to an Open Source event anywhere in the >> world >> >> http://moblin-contest.org/redirect.php?banner_id=100&url=/_______________________________________________ >> Virtuoso-users mailing list >> Virtuoso-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/virtuoso-users >> >> >> > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's > challenge > Build the coolest Linux based applications with Moblin SDK & win great > prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > > http://moblin-contest.org/redirect.php?banner_id=100&url=/_______________________________________________ > Virtuoso-users mailing list > Virtuoso-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/virtuoso-users > > >