Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 19901|Antwort: 0

[Kommunikation] C# Winform verhindert SQL-Injection

[Link kopieren]
Veröffentlicht am 29.01.2015 10:12:59 | | |
Pass-by-Parameter:
String sql = "select count(*) from zhuce, wo username=@username und pwd=@pwd und type = @type";
SqlConnection conn = neuer SqlConnection(Common.Context.SqlManager.CONN_STRING);
            Conn. Open();

            SqlCommand cmd = neuer SqlCommand (sql, conn);
cmd.Parameters.Add("@username",SqlDbType.VarChar,30);
cmd.Parameters.Add("@pwd",SqlDbType.VarChar,30);
cmd.Parameters.Add("@type",SqlDbType.VarChar,10);
cmd.Parameters["@username"]. Wert = Benutzername;
cmd.Parameters["@pwd"]. Wert = pwd;
cmd.Parameters["@type"]. Wert = Leistung. Text;

            int count = Convert.ToInt32(cmd.ExecuteScalar());

            Conn. Close();



Ich bin mir nicht sicher, welche Datenbank du verwendest.
Hier ist ein Stück SQL-Server-Code
Das Wichtigste, um Injektionsangriffe zu verhindern, ist nicht, Splicing-Parameter zu verwenden, sondern Parameterzuweisungsmethoden.
SqlConnection conn=......
SqlCommand comm =new SqlCommand ("select count (*) aus Table1, wobei Name = @loginame und Passwort = @loginpassword",conn);
Comm. Parameters.Add (neuer SqlParameter("@loginame",SqlDbType.NVarchar,20);
Comm. Parameters["@loginame"].value=TextBox1.Text;
Comm. Parameters.Add (neuer SqlParameter("@loginpassword",SqlDbType.NVarchar,20);
Comm. Parameters["@loginpassword"].value=TextBox2.Text;
Comm. Connection.Open();
int mark=(int)comm. ExecuteScalar()
//--mark用于标记




Vorhergehend:comboBox auf schreibgeschützt (nur auswählen) eingestellt
Nächster:SQL Server Composite Index Learning
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com