Heim > Datenbank > MySQL-Tutorial > Wie rufe ich mithilfe parametrisierter Abfragen Daten aus einer SQL Server-Datenbank in C# ab?

Wie rufe ich mithilfe parametrisierter Abfragen Daten aus einer SQL Server-Datenbank in C# ab?

Patricia Arquette
Freigeben: 2024-12-29 16:12:11
Original
889 Leute haben es durchsucht

How to Retrieve Data from a SQL Server Database in C# Using Parameterized Queries?

Abrufen von Daten aus einer SQL Server-Datenbank in C#

Um Daten aus einer SQL Server-Datenbank in C# abzurufen, können Sie die SqlConnection verwenden. SqlCommand- und SqlDataReader-Objekte. So können Sie dies erreichen:

  1. Stellen Sie eine Verbindung zur Datenbank her:

    SqlConnection con = new SqlConnection("Data Source=.
    Initial Catalog=domain;
    Integrated Security=True");
    con.Open();
    Nach dem Login kopieren
  2. Erstellen Sie einen SqlCommand Objekt:

    SqlCommand cmd = new SqlCommand("Select * from tablename", con);
    Nach dem Login kopieren
  3. Führen Sie den SqlCommand aus:

    using (SqlDataReader reader = cmd.ExecuteReader())
    {
      // Iterate over the results and retrieve values
      while (reader.Read())
      {
     // Get values from the current row
      }
    }
    Nach dem Login kopieren

Allerdings ist der Code Sie Die in Ihrer Frage angegebene Antwort funktioniert nicht, da Sie Ihre SQL-Abfrage nicht parametrisieren. Dadurch wird Ihr Code anfällig für SQL-Injection-Angriffe. Um dies zu beheben, verwenden Sie parametrisierte Abfragen:

cmd.CommandText = "select * from tablename where firstname = @firstName";
cmd.Parameters.AddWithValue("@firstName", textBox1.Text);
Nach dem Login kopieren

Hier ist ein Beispiel für eine vollständigere Methode, die Daten aus einer Datenbank abruft und benutzerdefinierte Objekte auffüllt:

public Person GetPerson(string firstName)
{
  var con = ConfigurationManager.ConnectionStrings["Yourconnection"].ToString();

  using (SqlConnection myConnection = new SqlConnection(con))
  {
    string oString = "Select * from Employees where FirstName=@fName";
    SqlCommand oCmd = new SqlCommand(oString, myConnection);
    oCmd.Parameters.AddWithValue("@Fname", fName);
    myConnection.Open();

    using (SqlDataReader oReader = oCmd.ExecuteReader())
    {
      while (oReader.Read())
      {
        Person matchingPerson = new Person
        {
          firstName = oReader["FirstName"].ToString(),
          lastName = oReader["LastName"].ToString(),
        };

        return matchingPerson;
      }
    }
  }

  return null; // If no person found
}
Nach dem Login kopieren

Um dies zu verwenden -Methode können Sie sie mit einem firstName-Parameter aufrufen und Ihre Textfelder mit den Eigenschaften des zurückgegebenen Person-Objekts füllen.

Das obige ist der detaillierte Inhalt vonWie rufe ich mithilfe parametrisierter Abfragen Daten aus einer SQL Server-Datenbank in C# ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage