Im Folgenden erklären wir ausführlich, wie die Datenbank in Page_Load() hinzugefügt, gelöscht und geändert wird. Abschließend fassen wir die Verwendung von ExecuteNonQuery(), ExecuteScalar() und ExecuteReader zusammen
-- --- -------------------------------- --- -------
1. Neue Datensätze hinzufügen
private void Page_Load(object sender, System.EventArgs e)
{
MyConnection.Open();'Öffnen Sie die Datenbank
MyCommand1.CommandText = "insert into admin Values('aaddq','as','ss')";
MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();'Weil ein Datensatz vorhanden ist hinzugefügt, also Return 1
//or MyCommand1.ExecuteReader(); fügen Sie zuerst einen Datensatz hinzu und geben Sie dann ein Objekt vom Typ System.Data.OleDb.OleDbDataReader zurück, das ist: EOF
//oder MyCommand1. ExecuteScalar(); Fügen Sie zuerst einen Datensatz hinzu und geben Sie das nicht implementierte Objekt zurück
MyConnection.Close(); - ------------------------------------------------- - -
2. Vorhandene Daten löschen
private void Page_Load(object sender, System.EventArgs e)
{
MyConnection.Open();'Öffnen Sie die Datenbank
MyCommand1.CommandText = " delete * from admin";
MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();'Da n Datensätze gelöscht wurden, werden n zurückgegeben
//or MyCommand1.ExecuteReader(); delete n Zeichnet zuerst Datensätze auf und gibt dann ein Objekt vom Typ System.Data.OleDb.OleDbDataReader zurück, das heißt: EOF
//oder MyCommand1(); lösche zuerst n Datensätze und gebe das nicht implementierte Objekt
MyConnection .Close zurück ();
}
-------------------------------- -- -------------------------
3. Vorhandene Daten ändern
private void Page_Load(object sender, System.EventArgs e)
{
MyConnection.Open();'Öffnen Sie die Datenbank
MyCommand1.CommandText = "update admin set admin_code='212',Admin_pwd='43' where admin_code='23'"; .Connection = MyConnection;
MyCommand1.ExecuteNonQuery();'Da 1 Datensatz geändert wird, wird n zurückgegeben
//oder MyCommand1.ExecuteReader(); ändert zuerst 1 Datensatz und gibt dann eine System .Data.OleDb zurück .OleDbDataReader-Objekt, das Objekt ist: EOF
//oder MyCommand1(); ändert zuerst 1 Datensatz und gibt ein nicht implementiertes Objekt
MyConnection.Close();
zurück
3. Über die Unterschiede zwischen den Methoden ExecuteNonQuery(), ExecuteScalar() und ExecuteReader:
1. ExecuteNonQuery(): Wenn SQL mit Datenbankdatensätzen arbeitet, wird die Zahl zurückgegeben Wenn es sich um SQL="CREATE TABLE LookupCodes (code_id smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED, code_desc varchar(50) NOT NULL)" handelt, gibt diese Methode -1 zurück, nachdem die Tabelle erstellt wurde erfolgreich.
Zum Beispiel:
private void Page_Load(object sender, System.EventArgs e)
{
MyConnection.Open();'Öffnen Sie die Datenbank
MyCommand1.CommandText = "CREATE TABLE LookupCodes ( code_id smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED, code_desc varchar(50) NOT NULL)"; MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();'Erstellen Sie zuerst eine LookupCodes-Tabelle und geben Sie dann -1 / /Oder MyCommand1.ExecuteReader(); Erstellen Sie zuerst eine LookupCodes-Tabelle und geben Sie dann ein Objekt vom Typ System.Data.OleDb.OleDbDataReader zurück, das heißt: EOF
//Oder MyCommand1 eine LookupCodes-Tabelle, gibt ein nicht implementiertes Objekt zurück
MyConnection.Close(); Abfrageergebnisse Die erste Zeile und die erste Spalte. Wenn (wenn die SQL keine Abfrageauswahl ist), wird ein nicht materialisiertes Objekt zurückgegeben. Da das Objekt nicht materialisiert ist, kann das Rückgabeergebnis nicht ToString() oder Equals(null) sein. Das bedeutet, dass das Ergebnis zurückgegeben wird. Hat keine Auswirkung.
3. Die Methode „executeReader“ führt SQL aus und gibt (wenn SQL eine Abfrageauswahl ist) eine Sammlung von Abfrageergebnissen zurück. Der Typ ist System.Data.OleDb.OleDbDataReader. Über dieses Ergebnis können Sie die Abfragedaten abrufen. Wenn (wenn SQL keine Abfrageauswahl ist), dann wird eine Sammlung vom Typ System.Data.OleDb.OleDbDataReader ohne Daten (EOF) zurückgegeben
4. Zusammenfassung:
Für Datenbanken in ASP. Es gibt viele Betriebsmethoden, um das gleiche Ziel zu erreichen. Genau wie bei ASP verwenden einige Leute gerne „Einfügen in“. Gewohnheiten. Natürlich kann es große Leistungsunterschiede zwischen verschiedenen Methoden geben. Dies kann nur erreicht werden, indem wir in unserem täglichen Studium nach und nach Erfahrungen sammeln. Übrigens bietet die ASP.Net-Seite eine Betriebsmethode ähnlich der folgenden:
OleDbCommand2.Parameters("au_id").Value = TextBox1.Text
OleDbCommand2.Parameters("au_lname").Value = TextBox2.Text
OleDbCommand2.Parameters("au_fname").Value = TextBox3.Text
OleDbCommand2.Parameters("phone").Value = TextBox4.Text
OleDbCommand2.Parameters("address").Value = TextBox5.Text
OleDbCommand2.Parameters("city").Value = TextBox6.Text
OleDbCommand2.Parameters("st").Value = TextBox7.Text
OleDbCommand2.Parameters("zip").Value = TextBox8.Text
OleDbCommand2.Parameters("contract").Value = CheckBox1.Checked
cmdresults = OleDbcommand2.ExecuteNonQuery()