[MontelLUG] Parametri su jdbc

Samuele samuele.zanin a tiscali.it
Dom 23 Ott 2016 14:03:32 CEST


Quando si fa una query da programma, è buona norma usare i parametri per 
le parti "variabili".
Ora, stavo vedendo su Java e jdbc, ma pare che non esistano i parametri 
per nome, salvo esempi di accrocchi più o meno evoluti che si trovano 
sui forum.

Mi confermate che è così?

Es.: metodo scorretto di fare una query (in pseudocodice):

Query.Text = "SELECT * FROM utenti WHERE userid = '" + UserId +"'";
Query.Open;

Con parametri senza nome:
Query.Text = "SELECT * FROM utenti WHERE userid = ?"
Query.Param(0).AsString = UserId;
Query.Open;

Con parametri con nome:
Query.Text = "SELECT * FROM utenti WHERE userid = :userid"
Query.Param("userid").AsString = UserId;
Query.Open;

Il beneficio del terzo modo sul secondo è che una volta scritto il 
codice, in caso di modifiche, si può ribaltare la query finché si vuole 
senza dover andare a riverificare la posizione dei parametri e 
modificarne le assegnazioni.
Mi pare molto, molto strano che non siano previsti di default.




Maggiori informazioni sulla lista montellug