KickJava   Java API By Example, From Geeks To Geeks.

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


1 package com.teamkonzept.field.db.queries.sybase;
2
3 import com.teamkonzept.db.*;
4 import java.sql.*;
5
6 /**
7  * @author $Author: alex $
8  * @version $Revision: 1.2 $
9  */

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