Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einführung
2 Grundlagen
3 Fehlerbehandlung
4 Erweiterte Grundlagen
5 Objektorientierte Programmierung
6 Wichtige Klassen in .NET
7 Weitere Elemente eines Windows-Programms
8 Datenbank-Anwendungen mit ADO.NET
9 Internet-Anwendungen mit ASP.NET
10 Zeichnen mit GDI+
11 Beispielprojekte
12 Windows Presentation Foundation
13 Windows Store-Apps für Windows 8
A Installation und technische Hinweise
B Lösungen der Übungsaufgaben
C Inhalt der Buch-DVD
D Der Autor
Stichwort

Jetzt Buch bestellen
Ihre Meinung?

Spacer
Einstieg in Visual Basic 2012 von Thomas Theis
Ideal für Programmiereinsteiger geeignet
Buch: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Rheinwerk Computing
579 S., 3., aktualisierte und erweiterte Auflage 2013, brosch., mit DVD
24,90 Euro, ISBN 978-3-8362-1959-4
Pfeil 9 Internet-Anwendungen mit ASP.NET
Pfeil 9.1 Grundlagen von Internet-Anwendungen
Pfeil 9.1.1 Statische Internet-Anwendungen
Pfeil 9.1.2 Dynamische Internet-Anwendungen
Pfeil 9.1.3 Vorteile von ASP.NET
Pfeil 9.2 Ein lokaler Webserver
Pfeil 9.2.1 Eine erste Internet-Anwendung
Pfeil 9.3 Eine erste ASP.NET Anwendung
Pfeil 9.3.1 Fehlerhafte Programmierung
Pfeil 9.4 Formatierung von Internetseiten
Pfeil 9.5 Senden und Auswerten von Formulardaten
Pfeil 9.6 Kontrolle der Benutzereingaben
Pfeil 9.7 Weitere Formularelemente
Pfeil 9.8 Ein Kalenderelement
Pfeil 9.9 ASP.NET und ADO.NET
Pfeil 9.10 Datenbank im Internet ändern

Rheinwerk Computing - Zum Seitenanfang

9.10 Datenbank im Internet ändern

Als Beispiel einer Datenbank-Änderung im Internet soll im folgenden Beispiel ein Datensatz zu einer Tabelle hinzugefügt werden. Das Hinzufügen mithilfe des SQL-Befehls insert wurde im Kapitel über ADO.NET bereits beschrieben.

In diesem Programm werden die folgenden Aktivitäten miteinander kombiniert:

  • Senden und Auswerten von Formulardaten
  • Kontrolle der Benutzereingaben
  • Ausnahmebehandlung
  • ASP.NET und ADO.NET (Zugriff auf eine Datenbank)

Im oberen Teil werden zunächst die vorhandenen Tabellendaten angezeigt. Im unteren Teil kann man die Daten eines neuen Datensatzes eintragen. Nach Eingabe eines Datensatzes ohne Personalnummer und dem Absenden sieht das Ergebnis aus wie in Abbildung 9.11.

Nach Eingabe eines Datensatzes mit einer Personalnummer, die bereits in der Tabelle vorkommt, sieht das Ergebnis aus wie in Abbildung 9.12.

Nach Eingabe eines Datensatzes mit einer Personalnummer, die noch nicht vorkommt, aber mit einem ungültigen Datum, erfolgt ebenfalls eine Fehlermeldung, siehe Abbildung 9.13.

Abbildung

Abbildung 9.11 Datensatz ohne Personalnummer

Abbildung

Abbildung 9.12 Doppelter Wert

Abbildung

Abbildung 9.13 Ungültiger Wert

Nach Eingabe eines gültigen Datensatzes sieht das Ergebnis aus wie in Abbildung 9.14.

Abbildung

Abbildung 9.14 Gültiger neuer Datensatz wurde eingefügt

Es folgt der Code der Seite default.aspx in der Web-Anwendung mit dem Namen WebDatenbankAktion:

<html>
<head>
<title>WebDatenbankAktion</title>

<%@ page language="VB" %>
<%@ import namespace="System.Data.OleDb" %>
<script runat="server">
Sub Page_Load()
Dim con As New OleDbConnection
Dim cmd As New OleDbCommand
Dim reader As OleDbDataReader
Dim anzahl As Integer

con.ConnectionString =
"Provider=Microsoft.ACE.OLEDB.12.0;" &
"Data Source=C:\Temp\firma.accdb"
cmd.Connection = con

If IsPostBack Then
Validate()
If Not IsValid Then
Exit Sub
End If

Try
con.Open()
cmd.CommandText =
"insert into personen " &
"(name, vorname, personalnummer, " &
"gehalt, geburtstag) " &
"values ('" &
txtName.Value & "', '" &
txtVorname.Value & "', " &
txtPersonalnummer.Value & ", " &
Replace(txtGehalt.Value, ",", ".") &
", '" & txtGeburtstag.Value & "')"

' ausgabe.Text = cmd.CommandText

anzahl = cmd.ExecuteNonQuery()
If anzahl > 0 Then
ausgabe.Text =
"Es wurde ein Datensatz eingefügt"
End If
Catch ex As Exception
ausgabe.Text = ex.Message
End Try

con.Close()
End If

cmd.CommandText = "select * from personen"

Try
con.Open()
reader = cmd.ExecuteReader()
grid.DataSource = reader
DataBind()
reader.Close()
Catch ex As Exception
ausgabe.Text = ex.Message
End Try
con.Close()

End Sub
</script>
</head>

<body>
<p>Datenbank-Tabelle</p>
<asp:DataGrid id="grid" runat="server" />


<form id="Form1" runat="server">
<p><input type="text" runat="server"
id="txtName" /> Name</p>
<p><input type="text" runat="server"
id="txtVorname" /> Vorname</p>

<p><input type="text" runat="server"
id="txtPersonalnummer" /> Personalnummer
<asp:RequiredFieldValidator
ID="RequiredFieldValidator1"
ControlToValidate="txtPersonalnummer"
Display="dynamic"
runat="server">
Bitte eintragen
</asp:RequiredFieldValidator></p>

<p><input type="text" runat="server"
id="txtGehalt" /> Gehalt</p>
<p><input type="text" runat="server"
id="txtGeburtstag" /> Geburtstag</p>
<p><input id="Submit1" type="submit" runat="server"
value="Senden" />
</form>

<p><asp:Label id="ausgabe" runat="server" /></p>
</body>
</html>

Listing 9.11 Projekt »WebDatenbankAktion«, Datei »default.aspx«

Zur Erläuterung des Visual-Basic-Blocks:

  • Die Objekte für die Datenbank-Verbindung, den SQL-Befehl und den Reader für das Abfrage-Ergebnis werden initialisiert.
  • Es kommt noch eine Variable zur Speicherung der Anzahl der geänderten Datensätze hinzu.
  • Der Inhalt der ersten If-Verzweigung wird nur ausgeführt, wenn der Benutzer das Formular senden möchte und nicht, wenn er die Seite zum ersten Mal aufruft.
  • Die Benutzereingaben werden kontrolliert. Ergibt die Kontrolle einen Fehler (keine Personalnummer), so wird die Prozedur verlassen. Es wird der Text Bitte eintragen hinter dem Feld personalnummer eingeblendet. Das Formular wird nicht zum Webserver gesendet.
  • Es beginnt eine Ausnahmebehandlung. Diese ist besonders wegen der vielen möglichen Fehler bei der Benutzereingabe erforderlich.
  • Der SQL-Befehl zum Einfügen eines Datensatzes wird mithilfe der Inhalte aus den Textfeldern des Formulars zusammengesetzt.
  • Während der Entwicklung kann es nicht schaden, den Befehl zunächst zur Kontrolle auszugeben, statt ihn zu senden. Falls der SQL-Befehl als richtig erkannt wird, kann diese Anweisung wieder auskommentiert werden.
  • Der SQL-Befehl zum Einfügen eines Datensatzes wird gesendet. Im Erfolgsfall wird ausgegeben, dass ein Datensatz hinzugefügt wurde.
  • Innerhalb der Verzweigung mit If IsPostBack wird der SQL-Befehl zum Anzeigen aller Datensätze erstellt.
  • Der Inhalt der Datenbank-Tabelle, einschließlich des neuen Datensatzes, wird mithilfe des Server-Steuerelements vom Typ DataGrid ausgegeben.
  • In diesem Programm wird die Verbindung eventuell zweimal geöffnet und wieder geschlossen, je nachdem, ob der Benutzer die Seite zum ersten Mal aufruft oder das Formular gesendet hat.

Zur Erläuterung des HTML-Containers:

  • Hier befindet sich hinter der Überschrift und dem Server-Steuerelement vom Typ DataGrid das Eingabeformular.
  • Das Eingabeformular beinhaltet fünf Textfelder für die Werte der fünf Felder eines neuen Datensatzes.
  • Nach dem Textfeld personalnummer steht ein Server-Steuerelement vom Typ RequiredFieldValidator, mit dessen Hilfe kontrolliert wird, ob eine Personalnummer eingetragen wurde.
  • Das unterste Label dient zur Ausgabe der Erfolgsmeldung oder der Fehlermeldungen bei der Ausnahmebehandlung.



Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Einstieg in Visual Basic 2012

Einstieg in Visual Basic 2012
Jetzt Buch bestellen


 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Rheinwerk-Shop: Visual Basic 2012






 Visual Basic 2012


Zum Rheinwerk-Shop: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Rheinwerk-Shop: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


Zum Rheinwerk-Shop: Java ist auch eine Insel






 Java ist auch
 eine Insel


Zum Rheinwerk-Shop: Einstieg in Python






 Einstieg in Python


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2013
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern