1 package org.apache.ojb.broker.accesslayer; 2 3 /* Copyright 2002-2005 The Apache Software Foundation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 19 /** 20 * Constants used to denote the type of SQL syntax of JOINs 21 * 22 * @author <a HREF="mailto:on@ibis.odessa.ua">Oleg Nitz</a> 23 * @version $Id: JoinSyntaxTypes.java,v 1.4.2.1 2005/12/21 22:22:58 tomdz Exp $ 24 */ 25 public interface JoinSyntaxTypes 26 { 27 /** 28 * SQL-92 syntax for joins: <br> 29 * SELECT ... FROM A INNER JOIN B ON A.PK=B.FK <br> 30 * SELECT ... FROM A LEFT OUTER JOIN B ON A.PK=B.FK <br> 31 * Nested joins:<br> 32 * SELECT ... FROM A INNER JOIN (B INNER JOIN C ON B.PK=C.FK) ON A.PK=B.FK <br> 33 * SELECT ... FROM A LEFT OUTER JOIN (B LEFT OUTER JOIN C ON B.PK=C.FK) ON A.PK=B.FK <br> 34 */ 35 public final byte SQL92_JOIN_SYNTAX = 0; 36 37 /** 38 * SQL-92 without parenthesis syntax for joins: <br> 39 * SELECT ... FROM A INNER JOIN B ON A.PK=B.FK <br> 40 * SELECT ... FROM A LEFT OUTER JOIN B ON A.PK=B.FK <br> 41 * Nested joins:<br> 42 * SELECT ... FROM A INNER JOIN ON A.PK=B.FK INNER JOIN C ON B.PK=C.FK <br> 43 * SELECT ... FROM A LEFT OUTER JOIN ON A.PK=B.FK LEFT OUTER JOIN C ON B.PK=C.FK<br> 44 */ 45 public final byte SQL92_NOPAREN_JOIN_SYNTAX = 1; 46 47 /** 48 * Oracle syntax for joins: <br> 49 * SELECT ... FROM A, B WHERE A.PK=B.FK <br> 50 * SELECT ... FROM A, B WHERE A.PK=B.FK(+) <br> 51 */ 52 public final byte ORACLE_JOIN_SYNTAX = 2; 53 54 /** 55 * Sybase ASE syntax for joins: <br> 56 * SELECT ... FROM A, B WHERE A.PK=B.FK <br> 57 * SELECT ... FROM A, B WHERE A.PK*=B.FK <br> 58 */ 59 public final byte SYBASE_JOIN_SYNTAX = 3; 60 } 61 62