Help needed: Code writing to a database freezes

Dear Java forum
I have the following problem. I had written the attached piece of code to write into a database I had previously created. The connection to the database is made: however my machine freezes at the write statement (no exception is thrown and no error or warning is given). Is there a way through?
Connection con = null;
          try
               String url = "jdbc:mysql://xxxxx";
          Class.forName ("com.mysql.jdbc.Driver").newInstance ();
          con = DriverManager.getConnection (url, "xxxxxx", pass);
          System.out.println("Database link performed &&&&&");
          catch (Exception e2) {
          System.out.println("Couldn't connect to database");
          System.out.println(e2.toString());
          System.exit(-1);
          PreparedStatement dataInsertStmt = con.prepareStatement("INSERT INTO reaction_table_1" + "first_reactant" + ", " + "second_reactant" + ", " + "first_product" + ", " + "second_product" + "VALUES (?, ?, ?, ?)");
          for(int rowctr=0; rowctr<5 ; rowctr++)
               for (int rcolctr=1; rcolctr<5; rcolctr++)
                    dataInsertStmt.setString(rcolctr, Reaction_Table[rowctr][rcolctr]);                // assignment of first reactant, second reactant etc
Problem statement >>>>>>>>>     dataInsertStmt.executeQuery();               }
               System.out.println("-->> Row update "+rowctr);
          };

There are several problems here. The first is your use of multiple concatenated strings; that is making it difficult to see the problem. This line
PreparedStatement dataInsertStmt = con.prepareStatement("INSERT INTO reaction_table_1" + "first_reactant" + ", " + "second_reactant" + ", " + "first_product" + ", " + "second_product" + "VALUES (?, ?, ?, ?)");is equivalent to this:
PreparedStatement dataInsertStmt = con.prepareStatement("INSERT INTO reaction_table_1first_reactant, second_reactant, first_product, second_productVALUES (?, ?, ?, ?)");Note the lack of spaces and correct parentheses. Try this instead:
PreparedStatement dataInsertStmt = con.prepareStatement("INSERT INTO reaction_table_1 (first_reactant, second_reactant, first_product, second_product) VALUES (?, ?, ?, ?)");Another problem is your array indeces. On this line,
dataInsertStmt.setString(rcolctr, Reaction_Table[rowctr][rcolctr])it looks like [rowctr][rcolctr] should be [rowctr][rcolctr-1]. JDBC may be 1-indexed, but your arrays are zero-indexed (at least they should be).
Another problem item is the use of executeQuery() - use executeUpdate() instead.
Another problem is the placement of the executeQuery / executeUpdate - it should go after the for loop where you currently have it, the way it's written now it will be executed each time you set a parameter; what you really want is for it to be executed after setting all the parameters.
Despite these problems, I am very surprised that the machine freezes - I would expect an SQL exception to be thrown. Not sure what's up with that.

Similar Messages

  • Help needed for writing query

    help needed for writing query
    i have the following tables(with data) as mentioned below
    FK*-foregin key (SUBJECTS)
    FK**-foregin key (COMBINATION)
    1)SUBJECTS(table name)     
    SUB_ID(NUMBER) SUB_CODE(VARCHAR2) SUB_NAME (VARCHAR2)
    2           02           Computer Science
    3           03           Physics
    4           04           Chemistry
    5           05           Mathematics
    7           07           Commerce
    8           08           Computer Applications
    9           09           Biology
    2)COMBINATION
    COMB_ID(NUMBER) COMB_NAME(VARCHAR2) SUB_ID1(NUMBER(FK*)) SUB_ID2(NUMBER(FK*)) SUB_ID3(NUMBER(FK*)) SUBJ_ID4(NUMBER(FK*))
    383           S1      9           4           2           3
    384           S2      4           2           5           3
    ---------I actually designed the ABOVE table also like this
    3) a)COMBINATION
    COMB_ID(NUMBER) COMB_NAME(VARCHAR2)
    383           S1
    384           S2
    b)COMBINATION_DET
    COMBDET_ID(NUMBER) COMB_ID(FK**) SUB_ID(FK*)
    1               383          9
    2               383          4
    3               383          2
    4               383          3
    5               384          4
    6               384          2          
    7               384          5
    8               384          3
    Business rule: a combination consists of a maximum of 4 subjects (must contain)
    and the user is less relevant to a COMB_NAME(name of combinations) but user need
    the subjects contained in combinations
    i need the following output
    COMB_ID COMB_NAME SUBJECT1 SUBJECT2      SUBJECT3      SUBJECT4
    383     S1     Biology Chemistry      Computer Science Physics
    384     S2     Chemistry Computer Science Mathematics Physics
    or even this is enough(what i actually needed)
    COMB_ID     subjects
    383           Biology,Chemistry,Computer Science,Physics
    384           Chemistry,Computer Science,Mathematics,Physics
    you can use any of the COMBINATION table(either (2) or (3))
    and i want to know
    1)which design is good in this case
    (i think SUB_ID1,SUB_ID2,SUB_ID3,SUB_ID4 is not a
    good method to link with same table but if 4 subjects only(and must) comes
    detail table is not neccessary )
    now i am achieving the result by program-coding in C# after getting the rows from oracle
    i am using oracle 9i (also ODP.NET)
    i want to know how can i get the result in the stored procedure itsef.
    2)how it could be designed in any other way.
    any help/suggestion is welcome
    thanks for your time --Pradeesh

    Well I forgot the table-alias, here now with:
    SELECT C.COMB_ID
    , C.COMB_NAME
    , (SELECT SUB_NAME
    FROM SUBJECTS
    WHERE SUB_ID = C.SUB_ID1) AS SUBJECT_NAME1
    , (SELECT SUB_NAME
    FROM SUBJECTS
    WHERE SUB_ID = C.SUB_ID2) AS SUBJECT_NAME2
    , (SELECT SUB_NAME
    FROM SUBJECTS
    WHERE SUB_ID = C.SUB_ID3) AS SUBJECT_NAME3
    , (SELECT SUB_NAME
    FROM SUBJECTS
    WHERE SUB_ID = C.SUB_ID4) AS SUBJECT_NAME4
    FROM COMBINATION C;
    As you need exactly 4 subjects, the columns-solution is just fine I would say.

  • Help needed in setting up Japanese Database

    Hi there,
    Help needed in setting up Japanese Database.
    I created database with UTF8 character set on Sun Solaris O/S.
    Oracle version 8.1.7.
    I am accessing the DB through SQL*Plus (Windows client).
    I downloaded the Japanese font on client side and also set the NLS_LANG environment variable to Japanese_Japan.UTF8. Still, I am not able to view Japanese characters. O/S on client side is Windows 2000 professional (English). Is O/S (client) need to be Japanese O/S? When I try to retrieve sysdate, its displaying in Japanese but not all characters in Japanese. Can anyone help me out how to set up the client and is there any parameters to be setup at server side? I also tried to insert japanese characters into table through client, but it displaying as "?????" characters. Any help in this regard is appreciated.
    Thanks in advance,
    -Shankar

    lol
    your program is working just fine.
    do you know what accept does? if not read below.
    serversocket.accept() is where java stops and waits for a (client)socket to connect to it.
    only after a socket has connected wil the program continue.
    try putting the accept() in its own little thread and let it wait there while your program continues in another thread

  • Help needed in writing query

    Hi,
    Could anyone help me in writing below query without syntax errors.
    I tried but no luck
    select xmlelement("g", XMLATTRIBUTES(g.contentgroup_id as "id",g.groupname as "label",
    (select xmlagg(xmlelement ("c",XMLATTRIBUTES(c.title as "title",c.content_id as "id")))) as "A"))
    as "A" from
    (SELECT g.contentgroup_id AS id, g.groupname AS label, c.title AS label, c.content_id AS id
    FROM content_ec c FULL OUTER JOIN contentgroup_ec g ON c.group_id = g.contentgroup_id
    oRDER BY g.groupname ,c.title ASC );
    Any help really appreciated.
    Thanks

    Few tips to get your question answered here
    1. Give your database version. Some thing that does not work in one version works fine in the next. And 8i,9i or 10g is not version. best way to give the version is to query your v$version table like this.
    SQL> select * from v$version where rownum = 1
      2  /
    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod2. You should understand we don't have what you have, meaning you should provide your data structure and some sample data for us to help.
    3. "I got an error"... "Its not working"... and the list goes on. Sentences like this does not help. If you got a error past the entire error. If stuff does not work, tell us the details.
    4. Just don't throw some output and say i want it. Please explain to every one how you derive it.
    5. And the most important thing. Use \...\ tag to format. Please.. Please.. Please.. use it. It helps every one a lot. When you use it your SQL looks some thing like this.
    SELECT xmlelement("g", XMLATTRIBUTES(g.contentgroup_id as "id",g.groupname as "label",
         (select xmlagg(xmlelement ("c",XMLATTRIBUTES(c.title as "title",c.content_id as "id")))) as "A")) as "A"
       FROM (SELECT g.contentgroup_id AS id,
                 g.groupname AS label,
                 c.title AS label,
                 c.content_id AS id
            FROM content_ec c
            FULL OUTER JOIN contentgroup_ec g
              ON c.group_id = g.contentgroup_id
           ORDER BY g.groupname ,c.title ASC );6. And also do search this forum. Most of your my queries are answered by simple search.
    Thanks,
    Karthick.

  • Help needed in writing a function.

    I am using Oracle 11g and SQL plus. I am a complete newbie, so I need some help here in writing a function. I guess my question is more about writing the trigonometric functions within the function.
    latA, longA latB, longB // these are the four input parameters,
    theta = longA - longB
    distX = sin( latA * PI / 180) * sin ( latB * PI /180) + cos ( latA * PI/180) * cos ( latB * PI/180) * cos ( theta * PI / 180)
    distY = acos(distX) // this is arc cosine
    distZ = distY * 180 / PI // PI refers to the mathematical PI
    distP = distZ * 60 * 1.1515; // this value should be returned. Of course the intermediate variable names don't matter.
    Please help. Thanks.

    CREATE OR REPLACE FUNCTION fucntion_name(latA IN NUMBER, longA IN NUMBER, latB IN NUMBER, longB IN NUMBER) RETURN NUMBER
    IS
    pi      CONSTANT NUMBER:=3.14159;
    theta NUMBER;
    distX  NUMBER;
    distY  NUMBER;
    distZ  NUMBER;
    distP  NUMBER;
    BEGIN
    theta :=longA - longB;
    distX :=sin( latA * PI /180) * sin ( latB * PI /180) + cos ( latA * PI/180) * cos ( latB * PI/180) * cos ( theta * PI / 180);
    distY :=acos(distX); --this is arc cosine
    distZ :=distY * 180/PI;  --PI refers to the mathematical PI
    distP :=distZ * 60 * 1.1515; --this value should be returned. Of course the intermediate variable names don't matter.
    RETURN distP;
    END;Edited by: Ora on May 3, 2011 11:46 PM

  • JMS, Help needed in writing a client code with .bindings file

    Some one is keeping a message in MQSeries in their environment. We need to develop a client code, probably a JMSClient, which will consume the messages from the MQSeries. They have given us a ".bindings" file. The following lines of code is used and we are not able to connect to it. Can somebody help us in completing this task?
    env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory");          
    env.put(Context.PROVIDER_URL, "file:///c:/Temp");
    String QCF = "CPS.ECOMM.QCF";
    String TEST_QUEUE_S = "SYSTEM.JMS.D.CPSI.ECOMM";
    initialContext = new InitialContext(env);
    queueConnectionFactory = (QueueConnectionFactory)initialContext.lookup(QCF);
    queueConnection = queueConnectionFactory.createQueueConnection();
    queueConnection.start();
    queueSession = queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
    queue = (Queue)initialContext.lookup(TEST_QUEUE_S);
    QueueReceiver receiver = queueSession.createReceiver(queue);
    Message msg = receiver.receive();
    TextMessage txtMsg = (TextMessage)msg;
    String result1 = txtMsg.getText();
    ....

    The .bindings file is part of the structure expected by the RefFSContextFactory in the directory that provider.utl points to.
    Create a directory containing only the .bindings file and point the PROVIDER_URL at the directory.

  • Help needed in writing a small piece of ABAP Code

    Subject : look up in an ODS and update in a characteristic routine (BI 7.0)  
    Hi ,
    My requirement is : I have data coming from both legacy as well as SAP Systems. The user wants both legacy as well as SAP fields data in their reports.
    I have a Standard DSO ( say DSO1) with all the legacy fields with direct mappings from Legacy sytem along with couple of SAP fields which are not mapped as of now.
    I have few more DSO's which have just the legacy field and corresponding SAP field data.
    like DSO 2 with ZCOMPCODE and 0COMPCODE data.
    All i have to do is write a Routine for unmapped 0COMPCODE field in DSO1 that pulls up corrersponding 0COMPCODE values for ZCOMPCODE from DSO 2 .
    *Could someone please help me with the Coding part of the Routine.*
    Greatly appreciate your help.

    CREATE OR REPLACE FUNCTION fucntion_name(latA IN NUMBER, longA IN NUMBER, latB IN NUMBER, longB IN NUMBER) RETURN NUMBER
    IS
    pi      CONSTANT NUMBER:=3.14159;
    theta NUMBER;
    distX  NUMBER;
    distY  NUMBER;
    distZ  NUMBER;
    distP  NUMBER;
    BEGIN
    theta :=longA - longB;
    distX :=sin( latA * PI /180) * sin ( latB * PI /180) + cos ( latA * PI/180) * cos ( latB * PI/180) * cos ( theta * PI / 180);
    distY :=acos(distX); --this is arc cosine
    distZ :=distY * 180/PI;  --PI refers to the mathematical PI
    distP :=distZ * 60 * 1.1515; --this value should be returned. Of course the intermediate variable names don't matter.
    RETURN distP;
    END;Edited by: Ora on May 3, 2011 11:46 PM

  • Help needed in writing SQL CASE or DECODE statement

    Hi experts,
    I need to write a SQL to select order_num, cntry_cde, prod_id and Qty by joining order_num on PROD_ORDER and PROD_ORDER_TXT.
    Here is my sample data
    PRODORDER_               
    order_num     cntry_cde     Prod_id     Qty
    100     US     A1     5
    101     US     A2     10
    102     AU     A3     4
    103     AU     A4     9
    104     IN     A5     3
    PRODORDER_TXT_               
    order_num     cntry_cde     Prod_id     
    100     US     A1     
    101     US     A2     
    102     NZ     A3     
    103     AU     A4     
    104          A5     
    Here is the requirement,
    1) If the cntry_cde in PROD_ORDER is same as cntry_cde in PROD_ORDER_TXT then select PROD_ORDER.cntry_cde (orders 100, 101, 103)
    2) If they are different, pick the country code from PROD_ORDER_TXT (order 102, AU <> NZ)
    3) If they are different and PROD_ORDER_TXT.cntry_cde is NULL, I cannot use it as cntry_cde in my report (order 104). It happenend just because of the bad data at source.
    I cannot avoid it. Then simply use the cntry_cde from PROD_ORDER
    Output expected
    100     US     A1     5
    101     US     A2     10
    102     NZ     A3     4 -- AU changed to NZ
    103     AU     A4     9
    104     IN     A5     3 -- IN retained as PROD_ORDER_TXT.cntry_cde is null
    sample table creation and insert statements are below
    create table prod_order
    (order_num number,
    cntry_cde CHAR(2),
    prod_id VARCHAR2(6),
    qty number)
    create table prod_order_txt
    (order_num number,
    cntry_cde CHAR(2),
    prod_id VARCHAR2(6))
    insert into prod_order values (100, 'US', 'A1',5);
    insert into prod_order values (101, 'US', 'A2',1);
    insert into prod_order values (102, 'AU', 'A3',4);
    insert into prod_order values (103, 'AU', 'A4',9);
    insert into prod_order values (104, 'IN', 'A5',3);
    insert into prod_order_txt values (100,'US','A1');
    insert into prod_order_txt values (101,'US','A2');
    insert into prod_order_txt values (102,'NZ','A3');
    insert into prod_order_txt values (103,'AU','A4');
    insert into prod_order_txt values (104,NULL,'A5');
    commit;
    Thanks for your help in advance
    Edited by: sarvan on Mar 28, 2012 1:39 PM

    Hello
    Thank you for posting all of the ddl and test data along with your expected output - very helpful!. One small point would be to remember to type {noformat}{noformat} before and after any section of code or data in your post so that formatting is retained.  Anyway, this should be a simple join and a combination of CASE and NVL...Select
    po.order_num,
    CASE
    WHEN po.cntry_cde != NVL(pot.cntry_cde,po.cntry_cde)
    THEN
    pot.cntry_cde
    ELSE
    po.cntry_cde
    END cntry_code,
    po.prod_id,
    po.qty
    FROM
    prod_order po
    JOIN
    prod_order_txt pot
    ON
    ( po.order_num = pot.order_num
    ORDER_NUM CN PROD_I QTY
    100 US A1 5
    101 US A2 1
    102 NZ A3 4
    103 AU A4 9
    104 IN A5 3
    5 rows selected.
    HTH
    David
    Edited by: Bravid on Mar 28, 2012 8:32 AM
    corrected !=                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Help needed in connecting to oracle database in unity

    Hi,
    I have been trying to connect to Oracle database in my codes. I have tried using OdbcConnection and OleDbconnection. But both did not allowed me to connect to the database. The database, testDb, can be accessed using SQL plus as well as the SQL developer. I even tested the connection successful using ODBC data source administrator.
    the following is my code for the connection string:
    OdbcConnection connectionString = "Driver={Oracle ODBC Driver};Server=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP )(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SID=Te stDb)));Uid=scott;Pwd=password;";
    the error i got is [ODBC Driver Manager] Data Source name not found and no default driver specified.
    for the driver parameter, i have tried using "Microsoft ODBC for Oracle". It gives me another error stating that the oracle and network components are not installed.
    I even tried "Oracle in OraDb11g_home1" which was specified in the ODBC Data Source Administrator. The same error came out.
    Below are some of my specifications:
    Platform: Windows 7 64bit
    Oracle: Oracle Database 11g Release 2 (64bit)
    Unity: 4.1.2
    Can someone please help me with this? What is it that i have done wrong?
    Thanks.

    1008737 wrote:
    Hi,
    I have been trying to connect to Oracle database in my codes. I have tried using OdbcConnection and OleDbconnection. But both did not allowed me to connect to the database. The database, testDb, can be accessed using SQL plus as well as the SQL developer. I even tested the connection successful using ODBC data source administrator.
    the following is my code for the connection string:
    OdbcConnection connectionString = "Driver={Oracle ODBC Driver};Server=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP )(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SID=Te stDb)));Uid=scott;Pwd=password;";
    whenever localhost (127.0.0.1) is used, this means that no remote client can ever connect to this system
    The problem involves ODBC configuration & has nothing to do with Oracle.

  • Help needed  in writing a Query/Procedure

    Hello All,
    Need all ur help in writing a query or procedure
    Lets say the Table name is DEMO
    There i have one column like num it has values
    1
    2
    3
    4
    5
    8
    9
    10
    my query output should be
    1-5
    8-10
    i,e .. if the diff between two rows is greater than 1 then it result should be in a separate group
    I need a query/Procedure for this. Kindly help
    Regards,
    Chandra

    Tried obtaining the output using SQL and the result is as follows:
    SQL> WITH T AS
      2  (
      3  SELECT 1 COL1 FROM DUAL
      4  UNION
      5  SELECT 2 COL1 FROM DUAL
      6  UNION
      7  SELECT 3 COL1 FROM DUAL
      8  UNION
      9  SELECT 4 COL1 FROM DUAL
    10  UNION
    11  SELECT 5 COL1 FROM DUAL
    12  UNION
    13  SELECT 8 COL1 FROM DUAL
    14  UNION
    15  SELECT 9 COL1 FROM DUAL
    16  UNION
    17  SELECT 10 COL1 FROM DUAL
    18  UNION
    19  SELECT 13 COL1 FROM DUAL
    20  UNION
    21  SELECT 14 COL1 FROM DUAL
    22  UNION
    23  SELECT 15 COL1 FROM DUAL
    24  UNION
    25  SELECT 16 COL1 FROM DUAL
    26  UNION
    27  SELECT 23 COL1 FROM DUAL
    28  UNION
    29  SELECT 24 COL1 FROM DUAL
    30  )
    31  SELECT OUTPUT FROM
    32  (
    33  SELECT DECODE(COL3,NULL,COL1, COL2)  || '-' || LEAD(DECODE(COL3,NULL,COL3, COL1)) OVER (ORDER BY DECODE(COL3,NULL,COL1, COL2)) OUTPUT  FROM
    34  (
    35  SELECT COL1, LEAD(COL1) OVER (ORDER BY COL1) COL2, LAG(COL1) OVER (ORDER BY COL1) COL3 FROM T
    36  )
    37  WHERE
    38  (COL2 - COL1 > 1 OR COL2 IS NULL OR COL3 IS NULL)
    39  )
    40  WHERE OUTPUT != '-';
    OUTPUT                                                                         
    1-5                                                                            
    8-10                                                                           
    13-16                                                                          
    23-24

  • Help needed on writing a SQL query

    Here is my table that shows records of 3 ORDER_ID (10, 20 and 30). All I need to do is, pick the first record of each order_id and check the event_id, if the event_id is same for the next record, ignore it, else show it and ignore rest all records for that order_id. This way my query output will show only two records for each ORDER_ID. Query should produce records that are in BOLD in the sample data. (Database - 11g)
    Thanks for your help in advance
    ORDER_ID     EVENT_ID     EVNT_DATE     STATE_CODE
    *10     16937555     20100212     COMPLETE*
    10     16937555     20100212     ACTIVE
    *10     16308004     20100129     OCCURRED*
    10     16131904     20100125     ACTIVE
    10     16270684     20100128     OCCURRED
    10     14899116     20091213     ACTIVE
    10     16085672     20100123     COMPLETE
    10     16085673     20100123     OCCURRED
    10     14899119     20100123     COMPLETE
    10     14899120     20100123     COMPLETE
    *20     17134164     20100223     COMPLETE*
    20     17134164     20100223     ACTIVE
    20     17134164     20100223     STARTED
    *20     15479131     20100105     OCCURRED*
    20     15478409     20100105     OCCURRED
    20     15478408     20100105     ACTIVE
    20     15119404     20100105     COMPLETE
    20     14346123     20091129     ACTIVE
    20     15467821     20100104     OCCURRED
    20     14346125     20091216     COMPLETE
    20     14346126     20091215     COMPLETE
    20     14346126     20091214     COMPLETE
    *30     18814670     20100412     COMPLETE*
    30     18814670     20100412     ACTIVE
    *30     18029509     20100320     OCCURRED*
    30     16853720     20100211     ACTIVE
    30     17965764     20100319     OCCURRED
    30     16386708     20100211     COMPLETE
    30     16804451     20100211     OCCURRED
    30     15977897     20100121     ACTIVE
    Edited by: sarvan on Aug 12, 2011 7:16 AM

    try this [Not fully tested]
    SQL> select * from v$version;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
    PL/SQL Release 11.2.0.2.0 - Production
    CORE    11.2.0.2.0      Production
    TNS for Linux: Version 11.2.0.2.0 - Production
    NLSRTL Version 11.2.0.2.0 - Production
    Elapsed: 00:00:00.00
    SQL> SELECT *
      2    FROM (SELECT order_id, event_id, evnt_date, state_code, next_evntid,
      3                 ROW_NUMBER () OVER (PARTITION BY event_id ORDER BY NULL)
      4                                                                       AS rownm
      5            FROM (WITH t AS
      6                       (SELECT 10 AS order_id, 16937555 AS event_id,
      7                               20100212 AS evnt_date, 'COMPLETE' AS state_code
      8                          FROM DUAL
      9                        UNION ALL
    10                        SELECT 10, 16937555, 20100212, 'ACTIVE'
    11                          FROM DUAL
    12                        UNION ALL
    13                        SELECT 10, 16308004, 20100129, 'OCCURRED'
    14                          FROM DUAL
    15                        UNION ALL
    16                        SELECT 10, 16131904, 20100125, 'ACTIVE'
    17                          FROM DUAL
    18                        UNION ALL
    19                        SELECT 10, 16270684, 20100128, 'OCCURRED'
    20                          FROM DUAL
    21                        UNION ALL
    22                        SELECT 20, 17134164, 20100223, 'COMPLETE'
    23                          FROM DUAL
    24                        UNION ALL
    25                        SELECT 20, 17134164, 20100223, 'ACTIVE'
    26                          FROM DUAL
    27                        UNION ALL
    28                        SELECT 20, 17134164, 20100223, 'STARTED'
    29                          FROM DUAL
    30                        UNION ALL
    31                        SELECT 20, 15479131, 20100105, 'OCCURRED'
    32                          FROM DUAL)  -- End of test data
    33                  SELECT order_id, event_id, evnt_date, state_code,
    34                         LEAD (event_id, 1, 0) OVER (PARTITION BY order_id ORDER BY NULL)
    35                                                                 AS next_evntid
    36                    FROM t)
    37           WHERE event_id = next_evntid)
    38   WHERE rownm <= 2
    39  /
      ORDER_ID   EVENT_ID  EVNT_DATE STATE_CO NEXT_EVNTID      ROWNM
            10   16937555   20100212 COMPLETE    16937555          1
            20   17134164   20100223 COMPLETE    17134164          1
            20   17134164   20100223 ACTIVE      17134164          2
    Elapsed: 00:00:00.00
    SQL> PS - You should seriously think about ordering the data before you do this kind off operations.
    Edited by: Sri on Aug 12, 2011 9:12 AM

  • Help Needed Importing XML into a Database

    Hi:
    I'm new to Appleworks databases. I would like to create a database by importing records from a large XML file containing thousands of records. Is there a user's guide (or something else) I could read to help me do this? I have the schema for the XML file.
    Thanks,
    -AstraPoint

    I'm new to Appleworks databases. I would like to
    create a database by importing records from a large
    XML file containing thousands of records. Is there a
    user's guide (or something else) I could read to help
    me do this? I have the schema for the XML file.
    AppleWorks is a flat-file database and not a relational database. It will import ASCII text files ie tab-delimited data (TSV file format).
    You need to write an XSL template to convert your XML data into a TSV or CSV. I'd be surprised if there already wasn't the basics of a XSL template that could do this on Google.

  • Urgent help needed on writing errors in to windows events application logs

    Hi all,
    we have web based application. Whenever there is critical errors encounters in our application we need to write that errors in to windows
    event viewer, application logs. Please help me on how to do this.
    do we have any specific API for this ?
    thanks in advance
    Shivakumar

    You should use WinAPI to do so. Asking in JNI forum (or specialized WinAPI forum) for more details is good idea I think.

  • Urgent help needed on writing errors in to windows application logs

    Hi all,
    we have web based application. Whenever there is critical errors encounters in our application we need to write that errors in to windows
    event viewer, application logs. Please help me on how to do this.
    do we have any specific API for this ?
    thanks in advance
    Shivakumar

    You should use WinAPI and followed functions: RegisterEventSource(), ReportEvent() and may be some more. It was some time ago as I deal with...

  • Help needed in writing a query

    Hi all,
    Following is the structure of my table.
    Data
    Key Number
    Id Number
    Value varchar2(100)
    activity_name varchar2(100)
    Creation_Date Date
    Eval_Point varchar2(100)
    In the above table Id is the primary key.
    The column eval_point holds only two types of entries 'activation' or 'completion'
    The activity_name column holds the name of the activity.
    The sample entries in the table are as follows
    Key Value activity_name Creation_Date Id Eval_Point
    260002 XXX assign_1 2007-09-21 16:58:41.920000 951 activation
    260002     XXX assign_1 2007-09-21 16:58:43.392000 953     completion
    260002     XXX assign_2 2007-09-21 16:59:03.732000 956     activation
    260002     XXX assign_2 2007-09-21 16:59:04.112000 954     completion
    260002     XXX assign_3 2007-09-21 16:59:24.331000     958     activation
    260002     XXX assign_3 2007-09-21 16:59:24.421000     957     completion
    i need to write a query which gives me data in the following format
    value id start_date end_date
    XXX YYY 2007-09-21 16:58:41.920000 2007-09-21 16:58:43.392000
    where start_date is the creation date of the 'activation' and end_date is the creation_date of 'completion'.
    Can somebody help?
    -thanks
    lavanya

    hello all,
    I would like to re frame my question.
    this is the output of the base query
    select id,instance_key,sensor_target,activity_sensor,creation_date,eval_point from bpel_variable_sensor_values where instance_key=260002;
    953     260002     Assign_1     952     2007-09-21 16:58:43.392000     completion
    951     260002     Assign_1     952     2007-09-21 16:58:41.920000     activation
    956     260002     Assign_2     955     2007-09-21 16:59:03.732000     activation
    954     260002     Assign_2     955     2007-09-21 16:59:04.112000     completion
    958     260002     Assign_3     959     2007-09-21 16:59:24.331000     activation
    957     260002     Assign_3     959     2007-09-21 16:59:24.421000     completion
    962     260002     Assign_4     960     2007-09-21 16:59:44.741000     completion
    961     260002     Assign_4     960     2007-09-21 16:59:44.640000     activation
    964     260002     Assign_5     965     2007-09-21 17:00:05.290000     completion
    963     260002     Assign_5     965     2007-09-21 17:00:04.950000     activation
    I am trying out this query
    select a.instance_key,a.creation_date,b.creation_date,a.id
    from bpel_variable_sensor_values a, bpel_variable_sensor_values b
    where a.instance_key=b.instance_key
    and a.instance_key=260002
    and a.eval_point='activation'
    and b.eval_point='completion'
    and i am getting 25 entries i.e a cartesian product of a.creation_date
    260002     2007-09-21 16:58:41.920000     2007-09-21 16:58:43.392000     951
    260002     2007-09-21 16:58:41.920000     2007-09-21 16:59:04.112000     951
    260002     2007-09-21 16:58:41.920000     2007-09-21 16:59:24.421000     951
    260002     2007-09-21 16:58:41.920000     2007-09-21 16:59:44.741000     951
    260002     2007-09-21 16:58:41.920000     2007-09-21 17:00:05.290000     951
    260002     2007-09-21 16:59:03.732000     2007-09-21 16:58:43.392000     956
    260002     2007-09-21 16:59:03.732000     2007-09-21 16:59:04.112000     956
    260002     2007-09-21 16:59:03.732000     2007-09-21 16:59:24.421000     956
    260002     2007-09-21 16:59:03.732000     2007-09-21 16:59:44.741000     956
    260002     2007-09-21 16:59:03.732000     2007-09-21 17:00:05.290000     956
    260002     2007-09-21 16:59:24.331000     2007-09-21 16:58:43.392000     958
    260002     2007-09-21 16:59:24.331000     2007-09-21 16:59:04.112000     958
    260002     2007-09-21 16:59:24.331000     2007-09-21 16:59:24.421000     958
    260002     2007-09-21 16:59:24.331000     2007-09-21 16:59:44.741000     958
    260002     2007-09-21 16:59:24.331000     2007-09-21 17:00:05.290000     958
    260002     2007-09-21 16:59:44.640000     2007-09-21 16:58:43.392000     961
    260002     2007-09-21 16:59:44.640000     2007-09-21 16:59:04.112000     961
    260002     2007-09-21 16:59:44.640000     2007-09-21 16:59:24.421000     961
    260002     2007-09-21 16:59:44.640000     2007-09-21 16:59:44.741000     961
    260002     2007-09-21 16:59:44.640000     2007-09-21 17:00:05.290000     961
    260002     2007-09-21 17:00:04.950000     2007-09-21 16:58:43.392000     963
    260002     2007-09-21 17:00:04.950000     2007-09-21 16:59:04.112000     963
    260002     2007-09-21 17:00:04.950000     2007-09-21 16:59:24.421000     963
    260002     2007-09-21 17:00:04.950000     2007-09-21 16:59:44.741000     963
    260002     2007-09-21 17:00:04.950000     2007-09-21 17:00:05.290000     963
    can soembody help me to reduce these to 5 rows.

Maybe you are looking for

  • Need sample pgm to delete entries

    Hi experts , iam some prblm with transaction data .. so i want to delete these entries fro the table . what my question is ?? A  program should take input from flat file consisting of same structure as of table XYZ  table . NOW IT HAS TO DELETE ALL T

  • Can you transfer files using Time Machine back-up to a new computer?

    I have an early 2006 iMac and would like to get a new one. Would I be able to copy the files that I want moved to the new computer by using my Time Machine back-up? I would only want to transfer a handful of items including my iTunes and iPhoto libra

  • Want to use Dell Laptop/Dock with iMac Display

    Hello, i currently have a MBP and a Work Laptop (Dell with Dock) and i would like to change my MBP to a iMac but i would like to use the same display on the iMac for the laptop dock too. Is this possible? I have read a couple of posts and am i right

  • Can't lock screen in KDE

    Hello guys, Please give me advice - how can i debug problem with screen locking in KDE? I don't find any similar problems in arch forums/mailing lists. This problem appeared after update. Standart Ctrl+Alt+L doesn't work, plasma applet (screen lock)

  • Region in Customer Master

    Dear All , in customizing where we can maintain Region which is used in Customer Master ? Rgds