Abrufen von Daten aus SQL-Server basierend auf dem TextBox-Wert in C#
Ich habe eine Datenbank mit 4 Spalten HouseNo
, Date
, Time
und IndoorTemp
. In meinem C# - Windows-Anwendung habe ich 4 Textboxen, die jeweils für die oben genannten Spalten.
Der Benutzer die HouseNo, Datum und Zeit-Wert in das Textfeld ein. Die Eingänge hier sollte ein Teil meiner SQL-Where-Klausel mit der Ausgabe als die Raumtemperatur. Diese sollten dann angezeigt werden in der letzten Textfeld ein.
Ich habe diese Verbindung:
//Create a String to hold the database connection string.
string sdwConnectionString = @"Data Source=IE1ADTBD5ZL1S\;Initial Catalog=ThermostatData2;Integrated Security=True";
//Create a connection
SqlConnection sdwDBConnection = new SqlConnection(sdwConnectionString);
Habe ich versucht einen code, dies zu tun, aber es ist fehlgeschlagen.
Mein code ist,
cmd.IndoorTemp = "select * from ThermData where HouseNo = '" + HouseNovalue.Text + "' and Date = '" + Datevalue.Text + "' and Time = '" + Timevalue.Text + "' ";
Wie kann ich das gewünschte Ergebnis erzielen.
Ich bin neu in C# und weiss nicht viel. Alle der oben genannten code wurde auch mit der Hilfe von ein paar blogs.
Tun, bitte helfen Sie mir auf diese ein. Auch empfehlen ein gutes Buch, wo ich lernen konnte, um Programm C# mit SQL Server. Vielen Dank im Voraus.
- Bauen Sie nicht die Abfrage von string-Verkettung! SqlParameters statt
- codeproject.com/Articles/4416/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
In diesem Beispiel, Sie erstellen eine neue
SqlConnection
, aber Sie sind durch die Nutzung dermit
- Anweisung, um sicherzustellen, dass es ordnungsgemäß entsorgt werden. Sie tun die gleiche Sache für dieSqlCommand
. Dann, Sie nutzen parametrisierte Anweisungen, um sicherzustellen, Sie sind sicher vor SQL-Injection.Schließlich, Sie sind die Nutzung
ExecuteScalar
gibt die erste Spalte aus der ersten Zeile des ResultSet -und das ist, was Sie wollen.Zunächst verwenden parametrisierten Abfrage:
Ergebnisse zu erhalten, die Sie tun können: