KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > teamkonzept > webman > mainint > db > queries > sybase > TKDBPresRefInsert


1 /*
2  * $Header: /cvsroot/webman-cms/source/webman/com/teamkonzept/webman/mainint/db/queries/sybase/Attic/TKDBPresRefInsert.java,v 1.2 2001/08/15 12:50:09 markus Exp $
3  *
4  */

5 /**
6  * Jedes Selectstatement erhaelt eine eigene Klasse
7  */

8 package com.teamkonzept.webman.mainint.db.queries.sybase;
9
10 import java.sql.*;
11
12 import com.teamkonzept.db.*;
13
14 /*
15  * TKDBPresRefInsert
16  * input "PRESENTATION_ID", "PRESENTATION_COMPONENT_IDX",
17  * "COMPONENT_TYPE", "INTEGRATION_TYPE",
18  * "INTEGRATION_NAME", "INTEGRATION_SHORTNAME", "SUB_PRESENTATION_ID",
19  *
20  * ouptut neu erzeugter DS aus PRESENTATION_REFERENCE
21  *
22  * erzeugt neuen Eintrag in PRESENTATION_COMPONENT + PRESENTATION_REFERENCE wenn
23  * PRESENTATION_COMPONENT_IDX nicht gesetzt wird.
24  * ist PRESENTATION_COMPONENT_IDX gesetzt dann wird nur ein neuer eintrag in
25  * PRESENTATION_REFERENCE erzeugt, in diesem Fall werden COMPONENT_TYPE, etc ignoriert und
26  * muessen nicht uebergeben werden
27  */

28 public class TKDBPresRefInsert extends TKPrepQuery{
29
30     public final static boolean isPrepared =
31         true;
32     
33     public final static String JavaDoc[] paramOrder =
34         {"PRESENTATION_ID", "PRESENTATION_COMPONENT_IDX", "COMPONENT_TYPE", "INTEGRATION_TYPE",
35          "INTEGRATION_NAME", "INTEGRATION_SHORTNAME", "SUB_PRESENTATION_ID" };
36     
37     public final static Object JavaDoc[][] paramTypes =
38         {{"INTEGRATION_NAME", new Integer JavaDoc(Types.VARCHAR)},
39          {"INTEGRATION_SHORTNAME", new Integer JavaDoc(Types.VARCHAR)}};
40                 
41     public final static boolean[] setRelevants =
42         { true };
43         
44     public final static String JavaDoc sqlString =
45         "DECLARE @PIDX int " +
46         "DECLARE @PID int " +
47         
48         "SELECT @PID = ? " +
49         "SELECT @PIDX = ? " +
50         
51         "BEGIN TRANSACTION " +
52         
53         "IF (@PIDX IS NULL) " +
54         "BEGIN " +
55             "SELECT " +
56             " @PIDX=ISNULL(MAX(PRESENTATION_COMPONENT_IDX)+1, 0) " +
57             "FROM " +
58             " PRESENTATION_COMPONENT " +
59             "WHERE " +
60             " PRESENTATION_ID = @PID " +
61     
62             "INSERT INTO " +
63             " PRESENTATION_COMPONENT " +
64             " (PRESENTATION_ID, PRESENTATION_COMPONENT_IDX, " +
65             " COMPONENT_TYPE, INTEGRATION_TYPE, " +
66             " INTEGRATION_NAME, INTEGRATION_SHORTNAME) " +
67             "VALUES " +
68             " (@PID, @PIDX, ?, ?, ?, ?) " +
69         "END " +
70             
71         "INSERT INTO " +
72         " PRESENTATION_REFERENCE " +
73         " (PRESENTATION_ID, PRESENTATION_COMPONENT_IDX, " +
74         " SUB_PRESENTATION_ID) " +
75         "VALUES " +
76         " (@PID, @PIDX, ?) " +
77         
78         "SELECT " +
79         " * " +
80         "FROM " +
81         " PRESENTATION_REFERENCE " +
82         "WHERE " +
83         " PRESENTATION_ID = @PID " +
84         "AND " +
85         " PRESENTATION_COMPONENT_IDX = @PIDX " +
86
87         "COMMIT ";
88     
89     public void initQuery(Connection con) {
90         super.initQuery(
91             con,
92             isPrepared,
93             paramOrder,
94             paramTypes,
95             setRelevants,
96             sqlString );
97     }
98 }
99
100
101
Popular Tags