KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > teamkonzept > field > db > queries > sybase > TKDBContentNewLegacy


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

4 package com.teamkonzept.field.db.queries.sybase;
5
6 import com.teamkonzept.db.*;
7 import java.sql.*;
8
9 public class TKDBContentNewLegacy extends TKPrepQuery {
10
11     public final static boolean IS_PREPARED =
12         true;
13
14     public final static String JavaDoc[] PARAM_ORDER =
15         { "INSTANCE_ID", "STATUS_ID", "VERS_INFO", "VERS_AUTHOR" };
16
17     public final static Object JavaDoc[][] PARAM_TYPES =
18         { {"VERS_INFO", new Integer JavaDoc(Types.VARCHAR)},
19           {"VERS_AUTHOR", new Integer JavaDoc(Types.VARCHAR)} };
20
21     public final static boolean[] SET_RELEVANTS =
22         { true };
23
24     public final static String JavaDoc SQL_STRING =
25         "DECLARE @VERS_ID INT " +
26         "DECLARE @CONT_ID INT " +
27         "DECLARE @INST_ID INT " +
28         "DECLARE @STAT_ID INT " +
29
30         "BEGIN TRANSACTION " +
31
32         "SELECT @INST_ID = ? " +
33         "SELECT @STAT_ID = ? " +
34
35         "SELECT @VERS_ID=ISNULL(MAX(VERSION_ID)+1, 1) " +
36         "FROM CONTENT_VERSION " +
37
38         "SELECT @CONT_ID=ISNULL(MAX(CONTENT_ID)+1, 1) " +
39         "FROM CONTENT " +
40
41         "INSERT INTO CONTENT (CONTENT_ID) " +
42         "VALUES(@CONT_ID) " +
43
44         "INSERT INTO CONTENT_VERSION (VERSION_ID, INSTANCE_ID, CONTENT_ID, STATUS_ID, VERSION_DATE, INFO, AUTHOR) " +
45         " VALUES (@VERS_ID, @INST_ID, @CONT_ID, @STAT_ID, {fn NOW()}, ?, ?) " +
46
47         "COMMIT TRANSACTION " +
48
49         "SELECT CV.*, CI.NAME FROM CONTENT_VERSION CV, CONTENT_INSTANCE CI " +
50         "WHERE CV.VERSION_ID = @VERS_ID AND CI.INSTANCE_ID = @INST_ID ";
51
52
53     public void initQuery(Connection con) {
54         super.initQuery(
55             con,
56             IS_PREPARED,
57             PARAM_ORDER,
58             PARAM_TYPES,
59             SET_RELEVANTS,
60             SQL_STRING );
61     }
62 }
63
Popular Tags