org.hibernate.community.dialect.Cache71Dialect Maven / Gradle / Ivy
/*
 * Hibernate, Relational Persistence for Idiomatic Java
 *
 * License: GNU Lesser General Public License (LGPL), version 2.1 or later.
 * See the lgpl.txt file in the root directory or .
 */
package org.hibernate.community.dialect;
/**
 * Caché 2007.1 dialect.
 *
 * This class is required in order to use Hibernate with Intersystems Caché SQL.  Compatible with
 * Caché 2007.1.
 *
 * PREREQUISITES
 * These setup instructions assume that both Caché and Hibernate are installed and operational.
 * 
 * HIBERNATE DIRECTORIES AND FILES
 * JBoss distributes the InterSystems Cache' dialect for Hibernate 3.2.1
 * For earlier versions of Hibernate please contact
 * InterSystems Worldwide Response Center (WRC)
 * for the appropriate source files.
 * 
 * CACHÉ DOCUMENTATION
 * Documentation for Caché is available online when Caché is running.
 * It can also be obtained from the
 * InterSystems website.
 * The book, "Object-oriented Application Development Using the Caché Post-relational Database:
 * is also available from Springer-Verlag.
 * 
 * HIBERNATE DOCUMENTATION
 * Hibernate comes with extensive electronic documentation.
 * In addition, several books on Hibernate are available from
 * Manning Publications Co.
 * Three available titles are "Hibernate Quickly", "Hibernate in Action", and "Java Persistence with Hibernate".
 * 
 * TO SET UP HIBERNATE FOR USE WITH CACHÉ
 * The following steps assume that the directory where Caché was installed is C:\CacheSys.
 * This is the default installation directory for  Caché.
 * The default installation directory for Hibernate is assumed to be C:\Hibernate.
 * 
 * If either product is installed in a different location, the pathnames that follow should be modified appropriately.
 * 
 * Caché version 2007.1 and above is recommended for use with
 * Hibernate.  The next step depends on the location of your
 * CacheDB.jar depending on your version of Caché.
 * 
 * - Copy C:\CacheSys\dev\java\lib\JDK15\CacheDB.jar to C:\Hibernate\lib\CacheDB.jar.
 
 * - Insert the following files into your Java classpath:
 * 
 * 
 * - All jar files in the directory C:\Hibernate\lib
 
 * - The directory (or directories) where hibernate.properties and/or hibernate.cfg.xml are kept.
 
 * 
 *  
 * - In the file, hibernate.properties (or hibernate.cfg.xml),
 * specify the Caché dialect and the Caché version URL settings.
 
 * 
 * 
 * For example, in Hibernate 3.2, typical entries in hibernate.properties would have the following
 * "name=value" pairs:
 * 
 * 
 * Properties 
 * 
 * Property Name 
 * Property Value 
 *  
 * 
 * hibernate.dialect 
 * org.hibernate.community.dialect.Cache71Dialect 
 *  
 * 
 * hibernate.connection.driver_class 
 * com.intersys.jdbc.CacheDriver 
 *  
 * 
 * hibernate.connection.username 
 * (see note 1) 
 *  
 * 
 * hibernate.connection.password 
 * (see note 1) 
 *  
 * 
 * hibernate.connection.url 
 * jdbc:Cache://127.0.0.1:1972/USER 
 *  
 * 
 * 
 * NOTE: Please contact your administrator for the userid and password you should use when
 *         attempting access via JDBC.  By default, these are chosen to be "_SYSTEM" and "SYS" respectively
 *         as noted in the SQL standard.
 * 
 * 
CACHÉ VERSION URL
 * This is the standard URL for the JDBC driver.
 * For a JDBC driver on the machine hosting Caché, use the IP "loopback" address, 127.0.0.1.
 * For 1972, the default port, specify the super server port of your Caché instance.
 * For USER, substitute the NAMESPACE which contains your Caché database data.
 * 
 * CACHÉ DIALECTS
 * Choices for Dialect are:
 * 
 * 
 * 
 * - org.hibernate.community.dialect.Cache71Dialect (requires Caché
 * 2007.1 or above)
 
 * 
 * 
 * SUPPORT FOR IDENTITY COLUMNS
 * Caché 2007.1 or later supports identity columns.  For
 * Hibernate to use identity columns, specify "native" as the
 * generator.
 * 
 * SEQUENCE DIALECTS SUPPORT SEQUENCES
 * 
 * To use Hibernate sequence support with Caché in a namespace, you must FIRST load the following file into that namespace:
 * 
 *     etc\CacheSequences.xml
 * 
 * For example, at the COS terminal prompt in the namespace, run the
 * following command:
 * 
 * d LoadFile^%apiOBJ("c:\hibernate\etc\CacheSequences.xml","ck")
 * 
 * In your Hibernate mapping you can specify sequence use.
 * 
 * For example, the following shows the use of a sequence generator in a Hibernate mapping:
 * 
 *     <id name="id" column="uid" type="long" unsaved-value="null">
 *         <generator class="sequence"/>
 *     </id>
 * 
 * 
 * 
 * Some versions of Hibernate under some circumstances call
 * getSelectSequenceNextValString() in the dialect.  If this happens
 * you will receive the error message: new MappingException( "Dialect
 * does not support sequences" ).
 * 
 * 
HIBERNATE FILES ASSOCIATED WITH CACHÉ DIALECT
 * The following files are associated with Caché dialect:
 * 
 * 
 * - src\org\hibernate\dialect\Cache71Dialect.java
 
 * - src\org\hibernate\dialect\function\ConditionalParenthesisFunction.java
 
 * - src\org\hibernate\dialect\function\ConvertFunction.java
 
 * - src\org\hibernate\exception\CacheSQLStateConverter.java
 
 * - src\org\hibernate\sql\CacheJoinFragment.java
 
 * 
 * Cache71Dialect ships with Hibernate 3.2.  All other dialects are distributed by InterSystems and subclass Cache71Dialect.
 *
 * @author Jonathan Levinson
 *
 * @deprecated use {@link CacheDialect}
 */
@Deprecated
public class Cache71Dialect extends CacheDialect {}