Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Formulazione Query: INSERT
giovedì 27 settembre 2007 - 15.06
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ojalà
Profilo
| Newbie
11
messaggi | Data Invio:
gio 27 set 2007 - 15:06
CIAO!
visto che prima mi siete stati cosi di aiuto..ne aprofitterei..perchè ho un altro problemino..questa volta con insert.
Nel database di sql server ho la tabella Animale con i seguenti campi:
Cod_animale(chiave),nome,Specie,Genere,Cod_gabbia
l'inserimento lo voglio fare dall'applicazione java che si interfaccia al database:
i campi vengono presi dal jtextField nel quale sono inseriti:
if(PulsantePremuto==jButton6){
String insert = new String();
insert = jTextField2.getText();
System.out.println(insert);
try {
String s,p = new String();
Connection conn = DriverManager.getConnection("jdbc:odbc:prova","ELISA","");
Statement stmt = conn.createStatement();
//QUESTA NON FUNZIONA
stmt.executeUpdate("INSERT INTO prova.dbo.Animale" + "(Cod_animale,Nome,Specie,Genere,Cod_gabbia)" + "VALUES ( " +insert+ ")");
//fUNZIONA ma i valori sono immessi da programma e non da jtextfield2
//stmt.executeUpdate("INSERT INTO prova.dbo.Animale" + "(Cod_animale,Nome,Specie,Genere,Cod_gabbia)" + "VALUES ('RA4','fisc','anfibio','rana','G1')");
stmt.close();
conn.close();
}
catch (Exception er) {er.printStackTrace();}
}
Come posso sistemare la insert non funzionante?
l'errore che otteengo è il seguente:
The name "RA4" is not permitted in this context. Valid expressions are constants, constant expressions, and (in some contexts) variables. Column names are not permitted
Grazie ancora!
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 27 set 2007 - 18:07
>CIAO!
ciao!
>visto che prima mi siete stati cosi di aiuto..ne aprofitterei..perchè
>ho un altro problemino..questa volta con insert.
>Nel database di sql server ho la tabella Animale con i seguenti
>campi:
>Cod_animale(chiave),nome,Specie,Genere,Cod_gabbia
>l'inserimento lo voglio fare dall'applicazione java che si interfaccia
>al database:
>
>//QUESTA NON FUNZIONA
>stmt.executeUpdate("INSERT INTO prova.dbo.Animale" + "(Cod_animale,Nome,Specie,Genere,Cod_gabbia)"
>+ "VALUES ( " +insert+ ")");
>
>//fUNZIONA ma i valori sono immessi da programma e non da jtextfield2
>//stmt.executeUpdate("INSERT INTO prova.dbo.Animale" + "(Cod_animale,Nome,Specie,Genere,Cod_gabbia)"
>+ "VALUES ('RA4','fisc','anfibio','rana','G1')");
>
>Come posso sistemare la insert non funzionante?
>l'errore che otteengo è il seguente:
>
>The name "RA4" is not permitted in this context. Valid expressions
>are constants, constant expressions, and (in some contexts) variables.
>Column names are not permitted
E' molto importante capire cosa c'è nel textbox che riempie la stringa "insert".
Comunque, il problema sta nella concatenazione delle stringhe.. considera che la sintassi che ottieni deve essere del tutto identica (con valori al max diversi) a quella che funziona. Quindi, direi che ti conviene fare un bel debug, visualizzando la stringa che ottieni dalla concatenazione, prima di eseguire..
Vedrai che trovi l'errore subito..
>
>Grazie ancora!
di nulla!
Alx81 =)
http://blogs.dotnethell.it/suxstellino
ojalà
Profilo
| Newbie
11
messaggi | Data Invio:
ven 28 set 2007 - 11:38
Sono riuscita a fare andare l'insert cosi:
stmt.executeUpdate("INSERT INTO prova.dbo."+selezionatabella+" "+record+" "+"VALUES ( " + insert + ")");
poi però adun certo punto ha smesso di andare dicendomi:
Incorrect syntax near the keyword 'null'
volevo chiedere se è una cosa che può dipendere dal database..
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
ven 28 set 2007 - 11:52
>Sono riuscita a fare andare l'insert cosi:
>
>stmt.executeUpdate("INSERT INTO prova.dbo."+selezionatabella+"
>"+record+" "+"VALUES ( " + insert + ")");
>poi però adun certo punto ha smesso di andare dicendomi:
>Incorrect syntax near the keyword 'null'
>volevo chiedere se è una cosa che può dipendere dal database..
Come dice l'errore, c'è un errore di sintassi.. e probabilmente è il db a darti errore, ma di sintassi..
ripeto.. stampati la stringa concatenata e controlla cosa viene fuori, è il modo migliore per capire quello che produci.
Alx81 =)
http://blogs.dotnethell.it/suxstellino
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !