Jeg sætter en antal sqlParameters til diverse SQL ting jeg laver, og putter dem i en arraylist, f.eks. sådan her hvor custID er long i c# og bigint med lenght 8 i SQL Server:
Men den sætter jo selv DBDataType har jeg netop fundet ud af, jeg tror altså det må være helt fint uden...... Men jeg er stadig interesseret i mere info
Det er i de fleste tilfælde ikke nødvendigt at sætte DbType, og det har ingenting at sige i forhold til SQL injection.
Når du bruger: new SqlParameter("@custID", custID), vil SqlParameter klassen automatisk sætte DbType til en databasetype som tilsvarer datatypen på custID variablen. Det vil altså sige, at hvis custID er en int, vil DbType automatisk sættes til DbType.Int32. Hvis custID er en Guid, vil DbType automatisk sættes til DbType.Guid, osv.
I nogle tilfælde kan det være du er nød til at sætte den, hvis eksempelvis database datatypen ikke den samme som .NET datatypen. Men i disse tilfælde er det alligevel foretrukket, at man konvertere .NET datatypen, før det sendet til databasen.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.