KickJava   Java API By Example, From Geeks To Geeks.

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


1 /**
2  * Jedes Selectstatement erhaelt eine eigene Klasse
3  */

4 package com.teamkonzept.webman.mainint.db.queries.sybase;
5
6 import java.sql.*;
7
8 import com.teamkonzept.db.*;
9
10 /*
11  * TKDBPresCompDelete
12  * input "PRESENTATION_ID", "PRESENTATION_COMPONENT_IDX",
13  * ouptut none
14  *
15  * loescht Eintrag in PRESENTATION_COMPONENT + alle referentiellen Bezuege in
16  * PRESENTATION_COTNENT, PRESENTATION_REFERENCE
17  *
18  * PRESENTATION_COMPONENT_IDX wird neu nummeriert in
19  * PRESENTATION_COMPONENT, PRESENTATION_COTNENT, PRESENTATION_REFERENCE
20  */

21 public class TKDBPresCompDelete extends TKPrepQuery
22 {
23
24     public final static boolean IS_PREPARED =
25         true;
26     
27     public final static String JavaDoc[] PARAM_ORDER =
28         {"PRESENTATION_ID", "PRESENTATION_COMPONENT_IDX" };
29     
30     public final static Object JavaDoc[][] PARAM_TYPES =
31         null;
32                         
33     public final static boolean[] SET_RELEVANTS =
34         { false };
35         
36     public final static String JavaDoc SQL_STRING =
37         "DECLARE @PIDX int " +
38         "DECLARE @PID int " +
39         
40         "SELECT @PID = ? " +
41         "SELECT @PIDX = ? " +
42         
43         "BEGIN TRANSACTION " +
44         
45         "DELETE FROM " +
46         " PRESENTATION_CONTENT " +
47         "WHERE " +
48         " PRESENTATION_ID = @PID " +
49         "AND " +
50         " PRESENTATION_COMPONENT_IDX = @PIDX " +
51
52         "DELETE FROM " +
53         " PRESENTATION_REFERENCE " +
54         "WHERE " +
55         " PRESENTATION_ID = @PID " +
56         "AND " +
57         " PRESENTATION_COMPONENT_IDX = @PIDX " +
58
59         "DELETE FROM " +
60         " PRESENTATION_COMPONENT " +
61         "WHERE " +
62         " PRESENTATION_ID = @PID " +
63         "AND " +
64         " PRESENTATION_COMPONENT_IDX = @PIDX " +
65
66         "DELETE FROM " +
67         " DOCUMENT_REFERENCE " +
68         "WHERE " +
69         " SRC_PRESENTATION_COMPONENT_IDX = @PIDX " +
70         "AND " +
71         " SRC_SITE_NODE_ID IN " +
72         " ( SELECT S.SITE_NODE_ID FROM SITE_DOCUMENT S, DOCUMENT_REFERENCE D WHERE PRESENTATION_ID = @PID AND S.SITE_NODE_ID = D.SRC_SITE_NODE_ID AND S.SITE_NODE_DOC_IDX = D.SRC_SITE_NODE_DOC_IDX) "+
73         "AND " +
74         " SRC_SITE_NODE_DOC_IDX IN " +
75         " ( SELECT S.SITE_NODE_DOC_IDX FROM SITE_DOCUMENT S, DOCUMENT_REFERENCE D WHERE PRESENTATION_ID = @PID AND S.SITE_NODE_ID = D.SRC_SITE_NODE_ID AND S.SITE_NODE_DOC_IDX = D.SRC_SITE_NODE_DOC_IDX) "+
76         
77         "DELETE FROM " +
78         " DOCUMENT_CONTENT " +
79         "WHERE " +
80         " PRESENTATION_COMPONENT_IDX = @PIDX " +
81         "AND " +
82         " SITE_NODE_ID IN " +
83         " ( SELECT S.SITE_NODE_ID FROM SITE_DOCUMENT S, DOCUMENT_CONTENT D WHERE PRESENTATION_ID = @PID AND S.SITE_NODE_ID = D.SITE_NODE_ID AND S.SITE_NODE_DOC_IDX = D.SITE_NODE_DOC_IDX) "+
84         "AND " +
85         " SITE_NODE_DOC_IDX IN " +
86         " ( SELECT S.SITE_NODE_DOC_IDX FROM SITE_DOCUMENT S, DOCUMENT_CONTENT D WHERE PRESENTATION_ID = @PID AND S.SITE_NODE_ID = D.SITE_NODE_ID AND S.SITE_NODE_DOC_IDX = D.SITE_NODE_DOC_IDX) "+
87         
88         "COMMIT ";
89     
90     public void initQuery(Connection con) {
91         super.initQuery(
92             con,
93             IS_PREPARED,
94             PARAM_ORDER,
95             PARAM_TYPES,
96             SET_RELEVANTS,
97             SQL_STRING );
98     }
99 }
100
Popular Tags