Heim > Artikel > Backend-Entwicklung > Parametrisierte Abfragen in C# mit SqlParameter
Die Rolle und Verwendung von SqlParameter in C#
In der C#-Entwicklung ist die Interaktion mit der Datenbank eine der häufigsten Aufgaben. Um die Sicherheit und Gültigkeit der Daten zu gewährleisten, müssen wir häufig parametrisierte Abfragen verwenden, um SQL-Injection-Angriffe zu verhindern. SqlParameter ist eine Klasse in C#, die zum Erstellen parametrisierter Abfragen verwendet wird. Sie bietet eine sichere und bequeme Möglichkeit, Parameter in Datenbankabfragen zu verarbeiten.
Die Rolle von SqlParameter
Die SqlParameter-Klasse wird hauptsächlich zum Hinzufügen von Parametern zu SQL-Anweisungen verwendet. Seine Hauptfunktionen sind wie folgt:
Verwendung von SqlParameter
Im Folgenden zeigen wir anhand eines Beispiels, wie SqlParameter zum Erstellen parametrisierter Abfragen verwendet wird.
Angenommen, wir haben eine Tabelle mit dem Namen „Mitarbeiter“, die die ID, den Namen und die Gehaltsinformationen der Mitarbeiter enthält. Wir müssen Informationen zu Mitarbeitern abfragen, deren Gehalt einen bestimmten Betrag übersteigt. Das Folgende ist ein Codebeispiel mit SqlParameter:
string queryString = "SELECT EmployeeID, FirstName, LastName FROM Employees WHERE Salary > @salary"; using (SqlConnection connection = new SqlConnection(connectionString)) { SqlCommand command = new SqlCommand(queryString, connection); command.Parameters.Add("@salary", SqlDbType.Decimal).Value = 5000; // 设置参数名称、类型和值 connection.Open(); SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { int employeeId = (int)reader["EmployeeID"]; string firstName = reader["FirstName"].ToString(); string lastName = reader["LastName"].ToString(); Console.WriteLine($"Employee ID: {employeeId}, Name: {firstName} {lastName}"); } reader.Close(); }
Im obigen Beispiel erstellen wir zunächst eine Abfragezeichenfolge, die den Parameternamen „@salary“ enthält. Anschließend haben wir mithilfe von SqlConnection und SqlCommand eine Datenbankverbindung und ein Abfragebefehlsobjekt erstellt.
Als nächstes fügen wir dem Abfragebefehl einen Parameter hinzu, indem wir die Methode command.Parameters.Add
aufrufen. Hier geben wir den Namen, Typ und Wert des Parameters an. In diesem Beispiel verwenden wir SqlDbType.Decimal
als Parametertyp und legen den Parameterwert auf 5000 fest. command.Parameters.Add
方法,我们向查询命令中添加了一个参数。在这里,我们指定了参数的名称、类型和值。在这个例子中,我们使用SqlDbType.Decimal
作为参数类型,并将参数值设置为5000。
最后,我们打开数据库连接,并执行查询命令。通过调用command.ExecuteReader
command.ExecuteReader
aufrufen, und verwenden Sie SqlDataReader, um die Ergebnisse Zeile für Zeile zu lesen. In der Schleife erhalten wir über den Spaltennamen die ID und den Namen jedes Mitarbeiters und geben diese an die Konsole aus.
Zusammenfassung
Das obige ist der detaillierte Inhalt vonParametrisierte Abfragen in C# mit SqlParameter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!