1 package com.teamkonzept.webman.mainint.db.queries.sybase; 2 3 import com.teamkonzept.db.*; 4 import java.sql.*; 5 6 12 public class TKDBContentTreeDeleteDependentDC extends TKPrepQuery { 13 public final static boolean isPrepared = 14 true; 15 16 public final static String [] paramOrder = 17 { "CONTENT_NODE_ID" }; 18 19 public final static Object [][] paramTypes = 20 null; 21 22 public final static boolean[] setRelevants = 23 { false }; 24 25 public final static String sqlString = 26 "DECLARE @L_NR INT " + 27 "DECLARE @R_NR INT " + 28 29 30 "CREATE TABLE #temp " + 31 "( " + 32 " CONTENT_NODE_ID int " + 33 ") " + 34 35 "BEGIN TRANSACTION " + 36 37 "SELECT " + 38 " @L_NR = LEFT_NR, @R_NR = RIGHT_NR " + 39 "FROM " + 40 " CONTENT_TREE " + 41 "WHERE " + 42 " CONTENT_NODE_ID = ? " + 43 44 45 "INSERT INTO " + 46 " #temp " + 47 " (CONTENT_NODE_ID) " + 48 "SELECT " + 49 " (CONTENT_NODE_ID) " + 50 "FROM " + 51 " CONTENT_TREE " + 52 "WHERE " + 53 " LEFT_NR >= @L_NR " + 54 "AND " + 55 " RIGHT_NR <= @R_NR " + 56 57 "DELETE FROM " + 58 " CONTENT_SELECTION " + 59 "WHERE " + 60 " SELECTION_ID IN ( " + 61 "SELECT " + 62 " SELECTION_ID " + 63 "FROM " + 64 " DOCUMENT_CONTENT " + 65 "WHERE " + 66 " CONTENT_NODE_ID IN ( " + 67 "SELECT " + 68 " CONTENT_NODE_ID " + 69 "FROM " + 70 " #temp " + 71 ") " + 72 "AND " + 73 " SELECTION_ID IS NOT NULL " + 74 ") " + 75 76 "DELETE FROM " + 77 " DOCUMENT_CONTENT " + 78 "WHERE " + 79 " CONTENT_NODE_ID IN ( " + 80 "SELECT " + 81 " CONTENT_NODE_ID " + 82 "FROM " + 83 " #temp " + 84 ") " + 85 86 "COMMIT TRANSACTION " + 87 88 "DROP TABLE #temp "; 89 90 public void initQuery(Connection con) { 91 super.initQuery( 92 con, 93 isPrepared, 94 paramOrder, 95 paramTypes, 96 setRelevants, 97 sqlString ); 98 } 99 } 100 101 102 | Popular Tags |