Pagina 4 di 4 primaprima ... 2 3 4
Visualizzazione dei risultati da 31 a 40 su 40
  1. #31
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Emix_69
    Il secondo e il sesto campo sono due varchar2 quindi due tipi alfanumerici e non capisco perchè non mi prende i numeri... ho provato per le altre variabili a mettere SetDouble ma nenache così funziona, tutte tranne al 2° e la 6° sono di tipo number, ma siccome non esiste SetNumber devo utilizzare il SetInt, ma nn funzionacosa posso fare??
    Ora ti posto le variabili con i relativi tipi:
    codice:
    Tipo variabile      /   Settaggio variabile
    1)numers(5, 0);  -->setInt(1, 1);
    2)varchar2(6);   -->setString(2, "c4");
    3)numers(4, 0);  -->setInt(3, 1);
    4)numers(1, 0);  -->setInt(4, 1);
    5)numers(4, 0);  -->setInt(5, 1);
    6)varchar2(30);  -->setString(6, "a2");
    7)numers(9, 0);  -->setInt(7, 1);
    8)numers(9, 0);  -->setInt(8, 1);
    I tipi li riprendo dalla tabella che ho io, ed è per questo che non capisco perchè non funziona....
    Purtroppo io non conosco ORACLE... che tipo di dato è "Number"?
    In MySQL, come in Access o SQL Server esistono diversi tipi di numeri:

    1) Interi -> tipo di dato INT, TINYINT, LONGINT (sono numeri senza la virgola, di varie pezzature)
    2) Decimali -> tipo di dato DECIMAL, FLOAT, DOUBLE (sono numeri con la virgola, di varie pezzature).

    Ora "Number" dice tutto e non dice niente... ripeto, non conosco Oracle, ma credo che anche lui permetta di queste diversificazioni... a ciascun numero il suo tipo.

    Ovvio che, in linea teoria, potresti assegnare un intero ad un campo decimale (10 = 10.0), ma nel campo dell'informatica il tipo di informazione è diverso.

    Quindi, se il tuo campo prevede la possibilità di accettare solo interi, si usa setByte(), setInt(), setLong() o setShort(), se prevede la possibilità di utilizzare numeri con la virgola, puoi scegliere fra setFloat() e setDouble().


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  2. #32
    Ho provato long, Byte, double e floatm niente non so più che ce devo mette.... uffi che barba, comunque mi da solo quello come errore quindi il resto del codice dovrebbe andar bene non sò più che fa con codesto programma....
    Emix!!

  3. #33
    Scusa è ma questo è giusto?? Io lo copiato paro e patto come me lo avevi dato tu...
    codice:
    PreparedStatement pstmt = result.prepareStatement("INSERT INTO AA043_COMUNE VALUES(?,?,?,?,?,?,?,?)");
    poi sotto istanzio tutti i tipi di varibile con i relativi valori...
    Emix!!

  4. #34
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Emix_69
    Scusa è ma questo è giusto?? Io lo copiato paro e patto come me lo avevi dato tu...
    codice:
    PreparedStatement pstmt = result.prepareStatement("INSERT INTO AA043_COMUNE VALUES(?,?,?,?,?,?,?,?)");
    poi sotto istanzio tutti i tipi di varibile con i relativi valori...
    Sì, quella è corretta.
    Quell'istruzione crea una PreparedStatement in cui sono previsti 8 parametri (gli 8 campi da valorizzare).
    Successivamente, tramite i metodi setter, si vanno a valorizzare i parametri.

    Puoi provare ad effettuare una prova, senza l'utilizzo delle PreparedStatement. Utilizzando la forma semplice (Statement), in questo modo:
    codice:
    try {
       Statement stmt = result.createStatement();
       String sql = "INSERT INTO AA043_COMUNE VALUES('1','c4','1','1','1','a2','1','1');";
    
       if ( !stmt.executeUpdate(sql) ) {
          System.out.println("Query non eseguita");
       }
    } catch (Exception e) {
       e.printStackTrace();
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #35
    codice:
    C:\Documents and Settings\sviluppo08\Documenti\Esercizio sotto stage\Connessione database Oracle on Java\GetConnection.java:97: incompatible types
    found   : int
    required: boolean
    	if (stmt2.executeUpdate(sql))
    Ci ho provato a fare come hai detto tu ma non funziona lo stessomi da questo errore che posso farci??
    Emix!!

  6. #36
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Emix_69
    codice:
    C:\Documents and Settings\sviluppo08\Documenti\Esercizio sotto stage\Connessione database Oracle on Java\GetConnection.java:97: incompatible types
    found   : int
    required: boolean
    	if (stmt2.executeUpdate(sql))
    Ci ho provato a fare come hai detto tu ma non funziona lo stessomi da questo errore che posso farci??
    Errore mio... correzione:
    codice:
    if (stmt2.executeUpdate(sql) >= 0) {
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #37
    Quindi se è maggiore = a 0 vuol dire ke è andata a buon fine?? o il contrario??
    Emix!!

  8. #38
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da Emix_69
    Quindi se è maggiore = a 0 vuol dire ke è andata a buon fine?? o il contrario??
    L'intero che viene restituito dalla executeUpdate() è il numero di righe che sono state effettivamente modificate (inserite, aggiornate, cancellate).
    Questo numero può essere maggiore di zero (che significa che sono state modificate tot righe) o uguale a 0 (che significa che nessuna riga è stata affetta dalla modifica richiesta, ad esempio una UPDATE, la cui clausola WHERE non è soddisfatta da alcuna riga).

    In realtà il controllo è superfluo, perchè non è previsto il ritorno di un numero negativo, ad esempio, in caso di errore. In questo caso, infatti, viene sollevata un'eccezione.

    Da notare che se l'istruzione ritorna 0, non significa che vi sia stato un errore.
    Un esempio di query che ritorna sempre 0 è la seguente:
    codice:
    UPDATE tabella
    SET campo='valore'
    WHERE 0;
    Questa è una query perfettamente valida, corretta, che non fa un bel nulla.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  9. #39
    Perfetto.... ora però mi da invalide charter(na cosa del genere non ricordo come si scrive....)
    tu ne sai nulla??
    Emix!!

  10. #40
    Per il momento ho lasciato un attimo perdere il programmino in java lo rivedo domani mattina meglio grazie comunque cirivediamo domani mattina....
    Emix!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.