Consiglio su codice programmazione

giovedì 24 febbraio 2005 - 11.29

trinity Profilo | Guru

Ragazzi, sono un pò confuso, vorrei chiedervi un consiglio, ora vi posto due stili di programmazione in ado.net che poggiano su database msde, mi potete dire quale dei due sono è il migliore per prestazioni?

PRIMO:

Dim db As New SqlCommand()
Dim cmd As New SqlCommand()
Db.connectionstring=...........
Db.Open

cmd=New SqlCommand("Insert Into tabella (id,prova) Values('1','ciao')",db)
cmd.ExecuteNonQuery()
cmd.connection.close
db.close

SECONDO:
Dim db As New SqlCommand()
Db.connectionstring=...........
Db.Open

dim cmd as SqlCommand=db.CreateCommand()
dim sql as string="Insert Into tabella (id,prova) Values('1','ciao')"
cmd.Connection=db
cmd.CommandText=sql
cmd.ExecuteNonQuery
cmd.Connection.Close
db.Close

ecco i due tipi di stili, qual'è il migliore per prestazione ed altro?

Ciao
Fabio

Andy Profilo | Senior Member

A mio parere personale, per una migliore chiarezza di sviluppo, (visto che a livello di tempistica di esecuzione un utente non nota la differenza), è sicuramente meglio il 2 stile, io lavoro praticamente solo così.

trinity Profilo | Guru

Perfetto grazie del tuo consiglio, se qualcun'altro vuole dare il suo parere, lo accettiamo..

Ciao
Fabio

trinity Profilo | Guru

Mi hanno detto che per ottime prestazioni e soprattutto per una protezione e sicurezza perfetta, devo utilizzare nella sintassi sql i parameters, è vero ?

Ciao
Fabio

19018 Profilo | Expert

Si, confermo!Le istruzioni parametriche convengono per vari motivi....prima di tutto per un fatto di prestazioni,infatti le istruzioni parametrizzate vengono ottimizzate dal dbms per cui sono scritte e poi per un fatto di sicurezza,se usi una istruzione sql concatenata nel codice sei soggetto ad attacchi di tipo sql injection mentre con la parametriche no!Il lato negativo è che le istruzioni parametriche sono fortemente legate al tipo di dbms su cui girano per cui non sono facilmente portabili!Ciao!

19018 Profilo | Expert

Si, confermo!Le istruzioni parametriche convengono per vari motivi....prima di tutto per un fatto di prestazioni,infatti le istruzioni parametrizzate vengono ottimizzate dal dbms per cui sono scritte e poi per un fatto di sicurezza,se usi una istruzione sql concatenata nel codice sei soggetto ad attacchi di tipo sql injection mentre con la parametriche no!Il lato negativo è che le istruzioni parametriche sono fortemente legate al tipo di dbms su cui girano per cui non sono facilmente portabili!Ciao!

trinity Profilo | Guru

Ok grazie ma io utilizzo msde di microsoft e quindi non dovrebbero esserci grandi problemi, cmq confermi che le prestazioni in termini di velocità,stabilità e sicurezza con i parameters sono ottime..

Ciao
Fabio
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5