Sto per avere a che fare con qualche codice SQL nel classico ASP VBScript.Come si esegue una query SQL con parametri nell'ASP classico? Ed è sicuro?
Ho due domande.
Innanzitutto, in .net, sono abituato a utilizzare gli oggetti dello spazio dei nomi System.Data.SqlClient per eseguire query. Per esempio:
Dim conn as New SqlConnection("Data Source=MyServer;uid=myUid;pwd=myPwd;Initial Catalog=myDataBase;"
Dim cmd as New SqlCommand("Select fname From myTable where [email protected];", conn)
cmd.Parameters.add(New SqlParameter("@uid",100323)
conn.open()
Response.Write(cmd.ExecuteScalar())
conn.Close()
mi è stato detto che l'utilizzo di una query con parametri in quanto tale, rende la mia interrogazione al sicuro da attacchi di SQL injection.
Mi piacerebbe sapere qual è il codice equivalente per eseguire una query di questo tipo in ASP classico con VBScript e quali precauzioni di sicurezza simili devono essere utilizzate per evitare l'iniezione SQL.
Questo funziona ma è leggermente fuorviante. Essendo adodb, anche pensato che parametro è chiamato @id, e la chiamata a createParameter si chiama "@id", credo che in realtà stia usando i parametri posizionati (come se steste usando solo??). Quindi se hai più valori da sostituire, DEVI chiamare createParameter (...) ogni volta nell'ordine appropriato. – Jagu