1 package com.teamkonzept.webman.mainint.db.queries.duplication.oracle; 2 3 import java.io.*; 4 import java.util.*; 5 import java.sql.*; 6 7 import com.teamkonzept.db.*; 8 9 14 public class TKDBContentTreeRenameRecursive extends TKPrepQuery{ 15 16 public final static boolean isPrepared = 17 true; 18 19 public final static String [] paramOrder = 20 { "NAME_EXT", "POS" , "ROOT_ID" }; 21 22 public final static Object [][] paramTypes = 23 {{ "NAME_EXT ", new Integer (Types.VARCHAR) }}; 24 25 public final static boolean[] setRelevants = 26 null; 27 28 public final static String sqlString = 29 30 31 32 " DECLARE " 33 + " name_ext VARCHAR2(100); " 34 + " root_id INTEGER; " 35 + " root_right INTEGER; " 36 + " root_left INTEGER; " 37 + " pos INTEGER; " 38 + " BEGIN " 39 + " name_ext := ?; " 40 + " pos := ?; " 41 + " root_id := ?; " 42 43 + " SELECT RIGHT_NR INTO root_right " 44 + " FROM CONTENT_TREE " 45 + " WHERE " 46 + " CONTENT_NODE_ID = root_id; " 47 48 + " SELECT LEFT_NR INTO root_left " 49 + " FROM CONTENT_TREE " 50 + " WHERE " 51 + " CONTENT_NODE_ID = root_id; " 52 + " IF (pos = 0) THEN " 53 + " " 54 + " UPDATE CONTENT_TREE " 55 + " SET CONTENT_NODE_NAME = name_ext || CONTENT_NODE_NAME " 56 + " WHERE LEFT_NR > root_left " 57 + " AND " 58 + " RIGHT_NR < root_right; " 59 60 61 + " UPDATE CONTENT_TREE " 62 + " SET CONTENT_NODE_SHORTNAME = name_ext || CONTENT_NODE_SHORTNAME " 63 + " WHERE LEFT_NR > root_left " 64 + " AND " 65 + " RIGHT_NR < root_right; " 66 + " ELSE " 67 + " " 68 + " UPDATE CONTENT_TREE " 69 + " SET CONTENT_NODE_NAME = CONTENT_NODE_NAME || name_ext " 70 + " WHERE LEFT_NR > root_left " 71 + " AND " 72 + " RIGHT_NR < root_right; " 73 74 75 + " UPDATE CONTENT_TREE " 76 + " set CONTENT_NODE_SHORTNAME = CONTENT_NODE_SHORTNAME || name_ext " 77 + " WHERE LEFT_NR > root_left " 78 + " AND " 79 + " RIGHT_NR < root_right; " 80 + " END IF; " 81 + " END; " 82 ; 83 84 85 public void initQuery(Connection con) { 86 super.initQuery( 87 con, 88 isPrepared, 89 paramOrder, 90 paramTypes, 91 setRelevants, 92 sqlString ); 93 } 94 } 95 96 97 98 99 100 101 | Popular Tags |