A neresite to moc slozite? Vzdyt zaznam muzete rovnou smazat bez
kontroly jeho existence. Pokud zaznam existuje, tak se smaze (to chcete)
a pokud ne, tak ten delete nic neudela. Urcite tim usetrite dost rezie.

[EMAIL PROTECTED] píše v Po 31. 07. 2006 v 09:54 +0200:
> Dobry den,
> byl bych velice vdecen za radu jelikoz uz nevim co stim.
> Mam cvs soubor, ze ktereho dostavam jazykove verze a ty ukladam do databaze (
> DB2 )
> kazdy zaznam v souboru ma svoje id. Ja ty zaznamy vypisuji cyklem a v tom 
> cyklu
> volam nize uvedeny kod, ktery overi jestli existuje nejaky zaznam s konkretnim
> id uz v databazi a pokud ano, tak jej smaze a nasledne vlozi jazykove verze.
> Problem mam prave v casti ktera zjistuje jestli nejaky uz existuje a kdyztak 
> jej
> maze. Porad at to zkousim jak chci, pokud zaznam existuje dostavam error:
> java.sql.SQLException: Cursor state not valid.
> 
> A nevim co stim.
> Omlouvam se za lama dotaz. Je mi jasny, ze chyba je mezi zidli a klavesnici.
> Predem diky za radu.
> 
> Class.forName("com.ibm.as400.access.AS400JDBCDriver");
> // register driver
> java.sql.DriverManager.registerDriver (new
> com.ibm.as400.access.AS400JDBCDriver());
> // create connection
> Connection con = DriverManager.getConnection("jdbc:as400/ip", "user", "pass");
> // create statement
> Statement statement   = con.createStatement();
> // enable making safety query
> statement.setEscapeProcessing(true);
> // check if some item with current id exist in table
> ResultSet r   = statement.executeQuery("SELECT COUNT(text_id) AS c FROM
> LIB.HTML_TEXT WHERE text_id='" + id + "'");
> 
> // if item is exist remove it
> while ( r.next() )
> {
>     if ( Integer.parseInt(r.getString("c")) > 0 )
>     {
>          statement.execute("DELETE FROM LIB.HTML_TEXT WHERE text_id='" + id + 
> "'
> ");
>     }
> }
> 
> // crete query for german version
> String sql1   = "INSERT INTO LIB.HTML_TEXT (text_id, text_language, html_text,
> app_s) " + "VALUES ('"+id+"', 'GER', '"+ger+"', 1)";
> // create query for english version
> String sql2   = "INSERT INTO LIB.HTML_TEXT (text_id, text_language, html_text,
> app_s) " + "VALUES ('"+id+"', 'EN', '"+en+"', 1)";
> // create query for french version
> String sql3   = "INSERT INTO LIB.HTML_TEXT (text_id, text_language, html_text,
> app_s) " + "VALUES ('"+id+"', 'FR', '"+fr+"', 1)";
> 
> //execute queries and dump messages
> if ( statement.execute(sql1) == true )
> {
>       System.out.println(id + " sql1 item has been inserted");
> }
> if ( statement.execute(sql2) == true )
> {
>       System.out.println(id + " sql2 item has been inserted");
> }
> if ( statement.execute(sql3) == true )
> {
>       System.out.println(id + " sql3 item has been inserted");
> }
> con.close();
> 
> 
> Zdenek Kasparek
> 
> 
> ----------------------------------------------------------------
> This message was sent using IMP, the Internet Messaging Program.
-- 
s pozdravem

Vladimír Náprstek
specialista AKC
RWE Energy Customer Services
tel: 475 233 102
e-mail: [EMAIL PROTECTED]

Odpovedet emailem