KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > teamkonzept > db > PostgreSQLStringFactory


1 package com.teamkonzept.db;
2
3 /**
4  * provides databasespecific strings
5  *
6  * @author
7  * @version
8  * @see DBStringFactory
9  */

10 public class PostgreSQLStringFactory extends DBStringFactory {
11
12     private static final String JavaDoc IF_NULL_THAN = " COALESCE";
13     private static final String JavaDoc POSTGRESQL_TEMP = " TEMPORARY ";
14     private static final String JavaDoc AUX_CLAUSE = " 1 = 1 ";
15     private static final String JavaDoc CHECK_EXISTENCE = " SELECT TABLENAME FROM PG_TABLES WHERE TABLENAME ";
16     private static final String JavaDoc ESCAPE = " ";
17     private static final String JavaDoc UPPER_ORDER = "upper";
18     
19     /** spez. Postgresbefehl */
20     public String JavaDoc specDeclareAsTemp(){
21         return POSTGRESQL_TEMP;
22     }
23
24     /** if null then...*/
25     protected String JavaDoc specNvl(){
26         return IF_NULL_THAN;
27     }
28     
29     /** ESCAPE*/
30     protected String JavaDoc specEscape(){
31         return ESCAPE;
32     }
33     
34     /** wird nur für postgres gebraucht, da postgres casesensitive sortiert
35      @return version des upper befehls*/

36     protected String JavaDoc specupperorder(){
37         return UPPER_ORDER;
38     }
39     
40
41     protected String JavaDoc specCheckExistence(){
42         return CHECK_EXISTENCE;
43     }
44     
45     /** left outer join on the given columns */
46     protected String JavaDoc specLeftOuterJoinFrom(String JavaDoc leftColumn, String JavaDoc rightColumn, String JavaDoc leftTable, String JavaDoc rightTable){
47         return outerJoinFrom("LEFT",leftColumn,rightColumn,leftTable,rightTable);
48     }
49     
50     
51     /** from-clause for given columns and tables/** right outer loin on the given columns */
52     protected String JavaDoc specRightOuterJoinFrom(String JavaDoc leftColumn, String JavaDoc rightColumn, String JavaDoc leftTable, String JavaDoc rightTable){
53         return outerJoinFrom("RIGHT",leftColumn,rightColumn,leftTable,rightTable);
54     }
55
56     private String JavaDoc outerJoinFrom(String JavaDoc orientation, String JavaDoc leftColumn, String JavaDoc rightColumn, String JavaDoc leftTable, String JavaDoc rightTable){
57
58         return leftTable + " " + orientation + " JOIN " + rightTable + " ON ( " + leftColumn + " = " + rightColumn + " ) ";
59     }
60
61     protected String JavaDoc specLeftOuterJoin(String JavaDoc leftColumn, String JavaDoc rightColumn){
62         return AUX_CLAUSE;
63     }
64
65     protected String JavaDoc specRightOuterJoin(String JavaDoc leftColumn, String JavaDoc rightColumn){
66         return AUX_CLAUSE;
67     }
68 }
69
70
71
Popular Tags