Datenbankprogrammierung mit .NET 3.5: mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
München
Hanser
2008
|
Schriftenreihe: | Reihe .NET-Bibliothek
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XVI, 632 S. Ill. 25 cm |
ISBN: | 9783446414501 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV023473988 | ||
003 | DE-604 | ||
005 | 20090210 | ||
007 | t | ||
008 | 080804s2008 gw a||| |||| 00||| ger d | ||
016 | 7 | |a 986605190 |2 DE-101 | |
020 | |a 9783446414501 |9 978-3-446-41450-1 | ||
035 | |a (OCoLC)248623484 | ||
035 | |a (DE-599)DNB986605190 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a ger | |
044 | |a gw |c XA-DE-BY | ||
049 | |a DE-92 |a DE-12 |a DE-91G |a DE-824 |a DE-210 |a DE-573 |a DE-858 |a DE-473 |a DE-29T |a DE-M347 |a DE-634 |a DE-1102 | ||
082 | 0 | |a 005.2768 |2 22/ger | |
084 | |a ST 253 |0 (DE-625)143628: |2 rvk | ||
084 | |a ST 270 |0 (DE-625)143638: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
084 | |a DAT 652f |2 stub | ||
100 | 1 | |a Kansy, Thorsten |e Verfasser |0 (DE-588)13606017X |4 aut | |
245 | 1 | 0 | |a Datenbankprogrammierung mit .NET 3.5 |b mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 |c Thorsten Kansy |
264 | 1 | |a München |b Hanser |c 2008 | |
300 | |a XVI, 632 S. |b Ill. |c 25 cm | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Reihe .NET-Bibliothek | |
650 | 0 | 7 | |a Microsoft dot net 3.5 |0 (DE-588)7623913-5 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Microsoft dot net 3.5 |0 (DE-588)7623913-5 |D s |
689 | 0 | |5 DE-604 | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016656266&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-016656266 |
Datensatz im Suchindex
_version_ | 1804137897147760640 |
---|---|
adam_text | inhalt
1 Vorwort und Einleitung 1
2 Neuerungen in SQL Server 2008 und Visual Studio 2008 5
2.1 SQL Server 2008 5
2.1.1 Neue Datentypen 5
2.1.2 Vereinfachte Initialisierung 6
2.1.3 Vereinfachte Berechnung 6
2.1.4 FileStream-Storage 7
2.1.5 CDC (Change Data Capture) 8
2.1.6 Die Merge-Anweisungen 9
2.1.7 Grouping Sets 10
2.1.8 Tabellen als Parameter (Table valued parameters - TVP) 11
2.1.9 Neuheiten bei der CLR-Integration 12
2.1.10 Sparse-Spalten 12
2.1.11 Transparente Verschlusslung der gesamten Datenbank 13
2.1.12 IntelliSense 13
2.1.13 Was sonst noch neu ist 13
2.2 Visual Studio 2008 14
2.2.1 .NET Framework Multi Targeting 14
2.2.2 Webdesigner 15
2.2.3 Assistenten, Designer und Add-Ons 15
2.2.4 Was sonst noch neu ist 16
2.3 Neuheiten in C# 3.x 16
2.3.1 Lokale Typinferenz 17
2.3.2 Kompaktere Initialisierung von Objekten 19
2.3.3 Anonyme Typen 21
2.3.4 Lambda-Ausdriicke 22
2.3.5 Erweiterungsmethoden 23
2.3.6 Abfrageausdrucke 25
2.3.7 Automatische Eigenschaften 26
2.3.8 Mengeninitialisierung 27
2.3.9 Partielle Methoden 27
3 Microsoft SQL Server 2008 29
3.1 Woraus besteht der SQL Server eigentlich? 29
3.1.1 Instanzen 29
3.1.2 Datenbankmodul 32
3.1.3 SQL Server Agent 32
3.1.4 Die Systemdatenbanken 36
3.1.5 Volltextsuche 37
3.1.6 Analysis Services 37
3.1.7 Reporting Services 37
3.1.8 Integration Services 37
3.2 Verwaltungsprogramme 37
3.2.1 SQL Server Management Studio 38
3.2.2 SQL Server Profiler 39
3.2.3 Datenbankoptimierungsratgeber (Database Tuning Advisor) 40
3.2.4 SQL Server-Konfigurationsmanager 41
3.3 Die Installation 41
3.3.1 Vorbereitung 41
3.3.2 Installation starten 42
3.3.3 Wahrend der Installation 43
3.4 Die Dienste hinter den Kulissen 44
3.5 Sicherheit 45
3.5.1 Ein wenig Begriffsklarung 45
3.5.2 Zwei Arten der Authentifizierung 46
3.5.3 Vordefinierte Anmeldungen 48
3.5.4 Vordefinierte Datenbankbenutzer 49
3.5.5 Berechtigungen vergeben 49
3.5.6 Serverrollen 50
3.5.7 Datenbankrollen 50
3.5.8 Besitzer 51
3.5.9 Benutzer anlegen 51
3.5.10 Datenbankschema 52
3.6 Mit Datenbanken arbeiten 53
3.6.1 Grundlegendes 53
3.6.2 Datenbank erstellen 55
3.6.3 Sichern/Wiederherstellen 57
3.6.4 Loschen 59
3.6.5 Tabellen Co 60
3.7 CDC (Change Data Capture) 61
3.7.1 Aktivierung 63
3.7.2 DML-Bruttoanderungen 66
3.7.3 DML-Nettoanderungen 68
3.7.4 DDL-Anderungen 69
3.7.5 Deaktivierung 69
i
3.8 Tipps und Tricks 69
3.8.1 Benutzen der erweiterten Eigenschaften der Datenbank 70
3.8.2 Sehen, welche T-SQL-Anweisungen das Management Studio (Express) verwendet72
3.8.3 Ein T-SQL-Skript fur ein Objekt oder eine Aktion erstellen 72
3.8.4 Eine Datenbank als Skript ausliefern 74
4 T-SQL 75
4.1 SQL-Varianten 75
4.2 T-SQL-Anweisungen entwickeln und testen 76
4.3 Allgemeine Grundlagen zum Anfang 78
4.3.1 Kommentare 78
4.3.2 Operatoren 79
4.3.3 Grofi- und Kleinschreibung 80
4.3.4 Literale 81
4.3.5 Zeichenketten 82
4.3.6 Zahlen mit Komma 82
4.3.7 Datum und Uhrzeit 82
4.3.8 Ungiiltige Zeichen und reservierte Schlusselworter 84
4.3.9 Zeilenumbriiche und Einschube mit Tab oder Leerzeichen 85
4.3.10 Ausfiihrungsblocke (Batches) 86
4.3.11 Ausdrucke 86
4.3.12 Lexikografische Ordnung 87
4.3.13 Tabellen oder Sichten 88
4.3.14 Gruppen von T-SQL-Anweisungen 88
4.3.15 Alles unsicher? 89
4.4 DML 89
4.4.1 Daten abfragen 89
4.4.2 Daten einfugen 109
4.4.3 Daten loschen 113
4.4.4 Daten manipulieren 115
4.4.5 Die Merge-Anweisung 116
4.5 Data Definition Language (DDL) 118
4.5.1 DDL-Anweisungen automatisch erstellen lassen 118
4.5.2 Datenbanken 121
4.5.3 Tabellen 124
4.5.4 Trigger 143
4.5.5 Sichten (Views) 149
4.5.6 Gespeicherte Prozeduren 151
4.5.7 Benutzerdefinierte Funktionen 155
4.5.8 Benutzerdefinierte Datentypen 157
4.6 Indizes 159
4.7 Transaktionen 162
4.8 Tipps und Tricks 163
4.8.1 Ermitteln der eingefugten Identitatswerte 163
4.8.2 Werte in die Identitatsspalte einfugen 163
4.8.3 Aktuellen Wert der Identitatsspalte auslesen und festlegen 164
4.8.4 In das Anwendungsprotokoll des Systems schreiben 165
4.8.5 Bei der Ausfiihrung eine Pause einlegen 166
5 SQL Server 2008 mit ADO.NET 167
5.1 Ubersicht iiber die Klassen 167
5.2 Die SqlConnection-Klasse 169
5.2.1 Wichtige Methoden und Eigenschaften 170
5.2.2 Zustand der Verbindung 171
5.2.3 Ereignisse 172
5.2.4 Verbindungs-Pooling (Connection Pooling) 174
5.2.5 Verbindungszeichenfolge (Connection String) 175
5.2.6 Statistische Werte abrufen 182
5.3 DieSqlConnectionStringBuilder-Klasse 184
5.3.1 Wichtige Methoden und Eigenschaften 184
5.3.2 Praktischer Einsatz 185
5.4 Die SqlCommand-Klasse 187
5.4.1 Wichtige Methoden und Eigenschaften 188
5.4.2 ExecuteNonQuery-Methode 189
5.4.3 ExecuteScalar-Methode 191
5.4.4 ExecuteReader-Methode 191
5.4.5 ExecuteXmlReader-Methode 193
5.4.6 SqlCommand in Verbindung mit SqlDataAdapter 193
5.4.7 Parameter verwenden 194
5.4.8 Ereignisse 196
5.4.9 Praktischer Einsatz 197
5.5 Die SqlParameter-Klasse 202
5.5.1 Wichtige Methoden und Eigenschaften 203
5.5.2 Richtung des Parameters 204
5.5.3 Praktischer Einsatz 204
5.5.4 Parameter fur mehrere Abfragen wieder verwenden 205
5.6 Die SqlDependency-Klasse 208
5.6.1 Wichtige Methoden und Eigenschaften 210
5.6.2 Ereignisse 211
5.6.3 Praktischer Einsatz 214
5.7 Die SqlDataReader-Klasse 216
5.7.1 Wichtige Methoden und Eigenschaften 217
5.8 Die XmlReader-Klasse 221
5.8.1 Wichtige Methoden und Eigenschaften 222
5.9 Die SqlDataAdapter-Klasse 224
5.10 Die SqlCommandBuilder-KJasse 224
5.11 Die SqlClientPermission-Klasse 225
5.11.1 Wichtige Methoden und Eigenschaften 225
5.11.2 Praktischer Einsatz 226
5.12 Die SqlBulkCopy-Klasse 227
5.12.1 Wichtige Methoden und Eigenschaften 228
5.12.2 Optionen fUr das Kopieren 229
5.12.3 Zuordnung von Quell-und Zielspalten 229
5.12.4 Ereignisse 230
5.12.5 Praktischer Einsatz 232
5.13 Die SqlTransaction-Klasse 234
5.13.1 Wichtige Methode und Eigenschaften 237
5.13.2 Isolationsgrad 237
5.13.3 Praktischer Einsatz 238
5.14 Die SqlException- und SqlError-Klasse 241
5.14.1 Wichtige Eigenschaften der SqlException-Klasse 242
5.14.2 Die SqlError-Klasse 243
5.14.3 Alle relevanten Informationen im Fehlerfall auswerten 243
5.15 MARS (Multiple Active Result Sets) 244
5.16 Asynchrone Ausfiihrung 244
5.16.1 Die IAsyncResult-Schnittstelle 245
5.16.2 BackgroundWorker-Komponente 247
5.16.3 Thread 247
5.17 Tipps und Tricks 249
5.17.1 Das Schema einer Tabelle abfragen 249
5.17.2 Das Kennwort iiber SqlConnection.ConnectionString erhalten 251
5.17.3 Das Kennwort bei SQL Server-Authentifizierung andern 251
5.17.4 Feststellen, warum eine SQL Server-Anmeldung fehlschlagt 252
5.17.5 Verbindungs-Pool per Code leeren 253
6 CLR-lntegration in SQL Server 2008 255
6.1 Grundlagen 255
6.1.1 Was ist machbar, was nicht? 256
6.1.2 Wie wurde die CLR-lntegration realisiert? 257
6.1.3 Wann T-SQL-und wann .NET-Objekte entwickeln? 259
6.1.4 Datentypen 260
6.1.5 Sicherheit 261
6.1.6 CLR-lntegration aktivieren und deaktivieren 269
6.1.7 Assemblies verwalten im SQL Server Management Studio (Express) 271
6.1.8 Assemblies mit T-SQL verwalten 274
6.2 Entwicklung Debugging 278
6.2.1 Visual Studio 2008 als Entwicklungsumgebung 278
6.2.2 Erste Schritte bei der Entwicklung 280
6.2.3 Fehler und Ausnahmen 296
6.2.4 Gespeicherte Prozeduren 298
6.2.5 Trigger 305
6.2.6 Benutzerdefinierte Funktionen 315
6.2.7 Tabellenwertfunktion 320
6.2.8 Aggregate 327
6.2.9 Benutzerdefinierte Typen 332
6.3 Installation, Aktualisierung und Deinstallation 343
6.3.1 Installation 343
6.3.2 Aktualisieren 345
6.3.3 Deinstallation 346
6.4 Tipps und Tricks 347
6.4.1 Sicherheitskontexte bei Erstellung mit CREATE festlegen 347
6.4.2 Auf zugeordnete Dateien zugreifen 348
6.4.3 Auf Eigenschaften der Assembly zugreifen 348
7 DataSets 351
7.1 Ubersicht iiber die Klassen 351
7.2 Die DataSet-Klasse 352
7.2.1 Wichtige Methoden und Eigenschaften 353
7.2.2 Ereignisse 356
7.2.3 DataSet beffillen 357
7.2.4 Ein DataSet komplett durchlaufen und ausgeben 364
7.2.5 Datenanderungen abfragen, annehmen und verwerfen 365
7.2.6 Das DataSet kopieren 368
7.3 Die DataTable-Klasse 369
7.3.1 Wichtige Methoden und Eigenschaften 370
7.3.2 Ereignisse 373
7.3.3 Spalten hinzufiigen, loschen und auflisten 374
7.3.4 Zeilen hinzufugen/loschen 376
7.3.5 Mit einem Primarschlussel arbeiten 378
7.3.6 Zeilen per Abfrage suchen 379
7.3.7 Werte lesen und verandern 380
7.3.8 Beziehungen zwischen DataTable-Objekten 382
7.3.9 Anderungen abfragen 383
7.3.10 Per XML-Serialisierung lesen und schreiben 383
7.3.11 DataTable-Objekte kopieren 383
7.3.12 Werte berechnen 383
7.4 Die DataRow-Klasse 384
7.4.1 Wichtige Methoden und Eigenschaften 384
7.4.2 Ereignisse 386
7.4.3 Zeilenstatus und Zeilenversionen 386
7.5 Die DataColumn-Klasse 388
7.5.1 Wichtige Methoden und Eigenschaften 389
7.5.2 Ereignisse 390
7.5.3 Berechnete Spalten 390
7.5.4 Per Code Spalten hinzufugen/entfernen 394
7.5.5 Die Reihenfolge der Spalten einer Tabelle verandern 394
7.6 Die DataRelation-Klasse 394
7.6.1 Wichtige Methoden und Eigenschaften 395
7.6.2 Ereignisse 395
7.7 Die DataView-Klasse 395
7.7.1 Wichtige Methoden und Eigenschaften 397
7.7.2 Ereignisse 398
7.7.3 Filter und Sortierung 398
7.7.4 Zeilenstatus in einem DataView 399
7.7.5 Zeilen in einem DataView finden 400
7.7.6 Ein DataView in eine Tabelle exportieren 401
7.8 Die DataRowView-Klasse 402
7.8.1 Wichtige Methoden und Eigenschaften 402
7.8.2 Ereignisse 402
7.8.3 Neue Zeilen hinzufugen 403
7.9 Die DataTableReader-Klasse 403
7.10 Eigene Fehler per Code signalisieren 404
7.11 Die SqlDataAdapter-Klasse 406
7.11.1 Wichtige Methoden und Eigenschaften 407
7.11.2 Ereignisse 408
7.11.3 TableMapping 410
7.12 Die SqlCommandBuilder-Klasse 410
7.12.1 Wichtige Methoden und Eigenschaften 411
7.12.2 Ereignisse 412
7.13 Typisierte DataSets 412
7.14 Tipps und Tricks 412
7.14.1 Nur die Anderungen eines DataSets schreiben 412
7.14.2 Inhaltund Schema getrennt schreiben/lesen 413
7.14.3 Ein DataSet komprimieren/dekomprimieren 414
8 Language Integrated Query 417
8.1 LINQ-Abfragen 420
8.1.1 Klassen/Tabellen fur die Beispiele 420
8.1.2 LINQ-Operatoren 422
8.1.3 Sequenzen 425
8.1.4 Verzogerte Ausfuhrung 426
8.1.5 Projektionsoperatoren 426
8.1.6 Filteroperatoren 428
8.1.7 Sortieroperatoren 429
8.1.8 Gruppierungsoperatoren 431
8.1.9 Join-Operatoren 433
8.1.10 Set-Operatoren 436
8.1.11 Aggregatoperatoren 438
8.1.12 Generierungsoperatoren 442
8.1.13 Quantifizierungsoperatoren 444
8.1.14 Aufteilungsopertoren 446
8.1.15 Elementoperatoren 447
8.1.16 Konvertierungsoperatoren 450
8.1.17 Sonstige Operatoren 454
8.2 LINQtoSQL 455
8.2.1 Der Datenkontext 456
8.2.2 Entitaten-Klassen 459
8.2.3 Abfragen 472
8.2.4 Abfragen protokollieren 483
8.2.5 Datenbindung 484
8.3 LINQ to DataSets 484
8.4 Tipps und Tricks 487
8.4.1 Bei LINQ to SQL statt null einen Fallback-Wert erhalten 487
9 Datenbindung 489
9.1 Klassen/Tabellen ffir die Beispiele 489
9.2 Windows Forms 490
9.2.1 Steuerelemente fur die Entwurfszeit 490
9.2.2 Einfache Datenbindung 491
9.2.3 Das DataGridView-Steuerelement 506
9.2.4 Bearbeiten der Zelleninhalte 528
9.3 ASP.NET 531
9.3.1 Datenquellen 532
9.3.2 Visuelle Steuerelemente 540
10 SQL Server Reporting Services 569
10.1 Ubersicht 570
10.1.1 Lokalervs. serverbasierter Modus 570
10.1.2 Berichtsdesigner 571
10.1.3 Berichts-Viewer 572
10.1.4 Berichtsserver 573
10.2 Lokaler Modus 573
10.2.1 Entwurfeines Berichts 574
10.2.2 Eigene Assemblies verwenden 603
10.2.3 Berichte zur Laufzeit angeben 606
10.3 Serverbasierte Berichte 608
10.3.1 Voraussetzungen 608
10.3.2 Installation und ^Configuration 609
10.3.3 Entwurfeines Berichtes 610
10.3.4 Unterschiede zur Entwicklung lokaler Berichte 614
10.3.5 Berichte in die eigene Anwendung einbauen 616
10.4 Ein Blick in die nahe Zukunft 617
10.5 Tipps und Tricks 618
10.5.1 Umschalten zwischen lokalem und serverbasiertem Modus 618
10.5.2 Unterdriicken der automatischen Parametereingabe 619
Register 621
i
|
adam_txt |
inhalt
1 Vorwort und Einleitung 1
2 Neuerungen in SQL Server 2008 und Visual Studio 2008 5
2.1 SQL Server 2008 5
2.1.1 Neue Datentypen 5
2.1.2 Vereinfachte Initialisierung 6
2.1.3 Vereinfachte Berechnung 6
2.1.4 FileStream-Storage 7
2.1.5 CDC (Change Data Capture) 8
2.1.6 Die Merge-Anweisungen 9
2.1.7 Grouping Sets 10
2.1.8 Tabellen als Parameter (Table valued parameters - TVP) 11
2.1.9 Neuheiten bei der CLR-Integration 12
2.1.10 Sparse-Spalten 12
2.1.11 Transparente Verschlusslung der gesamten Datenbank 13
2.1.12 IntelliSense 13
2.1.13 Was sonst noch neu ist 13
2.2 Visual Studio 2008 14
2.2.1 .NET Framework Multi Targeting 14
2.2.2 Webdesigner 15
2.2.3 Assistenten, Designer und Add-Ons 15
2.2.4 Was sonst noch neu ist 16
2.3 Neuheiten in C# 3.x 16
2.3.1 Lokale Typinferenz 17
2.3.2 Kompaktere Initialisierung von Objekten 19
2.3.3 Anonyme Typen 21
2.3.4 Lambda-Ausdriicke 22
2.3.5 Erweiterungsmethoden 23
2.3.6 Abfrageausdrucke 25
2.3.7 Automatische Eigenschaften 26
2.3.8 Mengeninitialisierung 27
2.3.9 Partielle Methoden 27
3 Microsoft SQL Server 2008 29
3.1 Woraus besteht der SQL Server eigentlich? 29
3.1.1 Instanzen 29
3.1.2 Datenbankmodul 32
3.1.3 SQL Server Agent 32
3.1.4 Die Systemdatenbanken 36
3.1.5 Volltextsuche 37
3.1.6 Analysis Services 37
3.1.7 Reporting Services 37
3.1.8 Integration Services 37
3.2 Verwaltungsprogramme 37
3.2.1 SQL Server Management Studio 38
3.2.2 SQL Server Profiler 39
3.2.3 Datenbankoptimierungsratgeber (Database Tuning Advisor) 40
3.2.4 SQL Server-Konfigurationsmanager 41
3.3 Die Installation 41
3.3.1 Vorbereitung 41
3.3.2 Installation starten 42
3.3.3 Wahrend der Installation 43
3.4 Die Dienste hinter den Kulissen 44
3.5 Sicherheit 45
3.5.1 Ein wenig Begriffsklarung 45
3.5.2 Zwei Arten der Authentifizierung 46
3.5.3 Vordefinierte Anmeldungen 48
3.5.4 Vordefinierte Datenbankbenutzer 49
3.5.5 Berechtigungen vergeben 49
3.5.6 Serverrollen 50
3.5.7 Datenbankrollen 50
3.5.8 Besitzer 51
3.5.9 Benutzer anlegen 51
3.5.10 Datenbankschema 52
3.6 Mit Datenbanken arbeiten 53
3.6.1 Grundlegendes 53
3.6.2 Datenbank erstellen 55
3.6.3 Sichern/Wiederherstellen 57
3.6.4 Loschen 59
3.6.5 Tabellen Co 60
3.7 CDC (Change Data Capture) 61
3.7.1 Aktivierung 63
3.7.2 DML-Bruttoanderungen 66
3.7.3 DML-Nettoanderungen 68
3.7.4 DDL-Anderungen 69
3.7.5 Deaktivierung 69
i
3.8 Tipps und Tricks 69
3.8.1 Benutzen der erweiterten Eigenschaften der Datenbank 70
3.8.2 Sehen, welche T-SQL-Anweisungen das Management Studio (Express) verwendet72
3.8.3 Ein T-SQL-Skript fur ein Objekt oder eine Aktion erstellen 72
3.8.4 Eine Datenbank als Skript ausliefern 74
4 T-SQL 75
4.1 SQL-Varianten 75
4.2 T-SQL-Anweisungen entwickeln und testen 76
4.3 Allgemeine Grundlagen zum Anfang 78
4.3.1 Kommentare 78
4.3.2 Operatoren 79
4.3.3 Grofi- und Kleinschreibung 80
4.3.4 Literale 81
4.3.5 Zeichenketten 82
4.3.6 Zahlen mit Komma 82
4.3.7 Datum und Uhrzeit 82
4.3.8 Ungiiltige Zeichen und reservierte Schlusselworter 84
4.3.9 Zeilenumbriiche und Einschube mit Tab oder Leerzeichen 85
4.3.10 Ausfiihrungsblocke (Batches) 86
4.3.11 Ausdrucke 86
4.3.12 Lexikografische Ordnung 87
4.3.13 Tabellen oder Sichten 88
4.3.14 Gruppen von T-SQL-Anweisungen 88
4.3.15 Alles unsicher? 89
4.4 DML 89
4.4.1 Daten abfragen 89
4.4.2 Daten einfugen 109
4.4.3 Daten loschen 113
4.4.4 Daten manipulieren 115
4.4.5 Die Merge-Anweisung 116
4.5 Data Definition Language (DDL) 118
4.5.1 DDL-Anweisungen automatisch erstellen lassen 118
4.5.2 Datenbanken 121
4.5.3 Tabellen 124
4.5.4 Trigger 143
4.5.5 Sichten (Views) 149
4.5.6 Gespeicherte Prozeduren 151
4.5.7 Benutzerdefinierte Funktionen 155
4.5.8 Benutzerdefinierte Datentypen 157
4.6 Indizes 159
4.7 Transaktionen 162
4.8 Tipps und Tricks 163
4.8.1 Ermitteln der eingefugten Identitatswerte 163
4.8.2 Werte in die Identitatsspalte einfugen 163
4.8.3 Aktuellen Wert der Identitatsspalte auslesen und festlegen 164
4.8.4 In das Anwendungsprotokoll des Systems schreiben 165
4.8.5 Bei der Ausfiihrung eine Pause einlegen 166
5 SQL Server 2008 mit ADO.NET 167
5.1 Ubersicht iiber die Klassen 167
5.2 Die SqlConnection-Klasse 169
5.2.1 Wichtige Methoden und Eigenschaften 170
5.2.2 Zustand der Verbindung 171
5.2.3 Ereignisse 172
5.2.4 Verbindungs-Pooling (Connection Pooling) 174
5.2.5 Verbindungszeichenfolge (Connection String) 175
5.2.6 Statistische Werte abrufen 182
5.3 DieSqlConnectionStringBuilder-Klasse 184
5.3.1 Wichtige Methoden und Eigenschaften 184
5.3.2 Praktischer Einsatz 185
5.4 Die SqlCommand-Klasse 187
5.4.1 Wichtige Methoden und Eigenschaften 188
5.4.2 ExecuteNonQuery-Methode 189
5.4.3 ExecuteScalar-Methode 191
5.4.4 ExecuteReader-Methode 191
5.4.5 ExecuteXmlReader-Methode 193
5.4.6 SqlCommand in Verbindung mit SqlDataAdapter 193
5.4.7 Parameter verwenden 194
5.4.8 Ereignisse 196
5.4.9 Praktischer Einsatz 197
5.5 Die SqlParameter-Klasse 202
5.5.1 Wichtige Methoden und Eigenschaften 203
5.5.2 Richtung des Parameters 204
5.5.3 Praktischer Einsatz 204
5.5.4 Parameter fur mehrere Abfragen wieder verwenden 205
5.6 Die SqlDependency-Klasse 208
5.6.1 Wichtige Methoden und Eigenschaften 210
5.6.2 Ereignisse 211
5.6.3 Praktischer Einsatz 214
5.7 Die SqlDataReader-Klasse 216
5.7.1 Wichtige Methoden und Eigenschaften 217
5.8 Die XmlReader-Klasse 221
5.8.1 Wichtige Methoden und Eigenschaften 222
5.9 Die SqlDataAdapter-Klasse 224
5.10 Die SqlCommandBuilder-KJasse 224
5.11 Die SqlClientPermission-Klasse 225
5.11.1 Wichtige Methoden und Eigenschaften 225
5.11.2 Praktischer Einsatz 226
5.12 Die SqlBulkCopy-Klasse 227
5.12.1 Wichtige Methoden und Eigenschaften 228
5.12.2 Optionen fUr das Kopieren 229
5.12.3 Zuordnung von Quell-und Zielspalten 229
5.12.4 Ereignisse 230
5.12.5 Praktischer Einsatz 232
5.13 Die SqlTransaction-Klasse 234
5.13.1 Wichtige Methode und Eigenschaften 237
5.13.2 Isolationsgrad 237
5.13.3 Praktischer Einsatz 238
5.14 Die SqlException- und SqlError-Klasse 241
5.14.1 Wichtige Eigenschaften der SqlException-Klasse 242
5.14.2 Die SqlError-Klasse 243
5.14.3 Alle relevanten Informationen im Fehlerfall auswerten 243
5.15 MARS (Multiple Active Result Sets) 244
5.16 Asynchrone Ausfiihrung 244
5.16.1 Die IAsyncResult-Schnittstelle 245
5.16.2 BackgroundWorker-Komponente 247
5.16.3 Thread 247
5.17 Tipps und Tricks 249
5.17.1 Das Schema einer Tabelle abfragen 249
5.17.2 Das Kennwort iiber SqlConnection.ConnectionString erhalten 251
5.17.3 Das Kennwort bei SQL Server-Authentifizierung andern 251
5.17.4 Feststellen, warum eine SQL Server-Anmeldung fehlschlagt 252
5.17.5 Verbindungs-Pool per Code leeren 253
6 CLR-lntegration in SQL Server 2008 255
6.1 Grundlagen 255
6.1.1 Was ist machbar, was nicht? 256
6.1.2 Wie wurde die CLR-lntegration realisiert? 257
6.1.3 Wann T-SQL-und wann .NET-Objekte entwickeln? 259
6.1.4 Datentypen 260
6.1.5 Sicherheit 261
6.1.6 CLR-lntegration aktivieren und deaktivieren 269
6.1.7 Assemblies verwalten im SQL Server Management Studio (Express) 271
6.1.8 Assemblies mit T-SQL verwalten 274
6.2 Entwicklung Debugging 278
6.2.1 Visual Studio 2008 als Entwicklungsumgebung 278
6.2.2 Erste Schritte bei der Entwicklung 280
6.2.3 Fehler und Ausnahmen 296
6.2.4 Gespeicherte Prozeduren 298
6.2.5 Trigger 305
6.2.6 Benutzerdefinierte Funktionen 315
6.2.7 Tabellenwertfunktion 320
6.2.8 Aggregate 327
6.2.9 Benutzerdefinierte Typen 332
6.3 Installation, Aktualisierung und Deinstallation 343
6.3.1 Installation 343
6.3.2 Aktualisieren 345
6.3.3 Deinstallation 346
6.4 Tipps und Tricks 347
6.4.1 Sicherheitskontexte bei Erstellung mit CREATE festlegen 347
6.4.2 Auf zugeordnete Dateien zugreifen 348
6.4.3 Auf Eigenschaften der Assembly zugreifen 348
7 DataSets 351
7.1 Ubersicht iiber die Klassen 351
7.2 Die DataSet-Klasse 352
7.2.1 Wichtige Methoden und Eigenschaften 353
7.2.2 Ereignisse 356
7.2.3 DataSet beffillen 357
7.2.4 Ein DataSet komplett durchlaufen und ausgeben 364
7.2.5 Datenanderungen abfragen, annehmen und verwerfen 365
7.2.6 Das DataSet kopieren 368
7.3 Die DataTable-Klasse 369
7.3.1 Wichtige Methoden und Eigenschaften 370
7.3.2 Ereignisse 373
7.3.3 Spalten hinzufiigen, loschen und auflisten 374
7.3.4 Zeilen hinzufugen/loschen 376
7.3.5 Mit einem Primarschlussel arbeiten 378
7.3.6 Zeilen per Abfrage suchen 379
7.3.7 Werte lesen und verandern 380
7.3.8 Beziehungen zwischen DataTable-Objekten 382
7.3.9 Anderungen abfragen 383
7.3.10 Per XML-Serialisierung lesen und schreiben 383
7.3.11 DataTable-Objekte kopieren 383
7.3.12 Werte berechnen 383
7.4 Die DataRow-Klasse 384
7.4.1 Wichtige Methoden und Eigenschaften 384
7.4.2 Ereignisse 386
7.4.3 Zeilenstatus und Zeilenversionen 386
7.5 Die DataColumn-Klasse 388
7.5.1 Wichtige Methoden und Eigenschaften 389
7.5.2 Ereignisse 390
7.5.3 Berechnete Spalten 390
7.5.4 Per Code Spalten hinzufugen/entfernen 394
7.5.5 Die Reihenfolge der Spalten einer Tabelle verandern 394
7.6 Die DataRelation-Klasse 394
7.6.1 Wichtige Methoden und Eigenschaften 395
7.6.2 Ereignisse 395
7.7 Die DataView-Klasse 395
7.7.1 Wichtige Methoden und Eigenschaften 397
7.7.2 Ereignisse 398
7.7.3 Filter und Sortierung 398
7.7.4 Zeilenstatus in einem DataView 399
7.7.5 Zeilen in einem DataView finden 400
7.7.6 Ein DataView in eine Tabelle exportieren 401
7.8 Die DataRowView-Klasse 402
7.8.1 Wichtige Methoden und Eigenschaften 402
7.8.2 Ereignisse 402
7.8.3 Neue Zeilen hinzufugen 403
7.9 Die DataTableReader-Klasse 403
7.10 Eigene Fehler per Code signalisieren 404
7.11 Die SqlDataAdapter-Klasse 406
7.11.1 Wichtige Methoden und Eigenschaften 407
7.11.2 Ereignisse 408
7.11.3 TableMapping 410
7.12 Die SqlCommandBuilder-Klasse 410
7.12.1 Wichtige Methoden und Eigenschaften 411
7.12.2 Ereignisse 412
7.13 Typisierte DataSets 412
7.14 Tipps und Tricks 412
7.14.1 Nur die Anderungen eines DataSets schreiben 412
7.14.2 Inhaltund Schema getrennt schreiben/lesen 413
7.14.3 Ein DataSet komprimieren/dekomprimieren 414
8 Language Integrated Query 417
8.1 LINQ-Abfragen 420
8.1.1 Klassen/Tabellen fur die Beispiele 420
8.1.2 LINQ-Operatoren 422
8.1.3 Sequenzen 425
8.1.4 Verzogerte Ausfuhrung 426
8.1.5 Projektionsoperatoren 426
8.1.6 Filteroperatoren 428
8.1.7 Sortieroperatoren 429
8.1.8 Gruppierungsoperatoren 431
8.1.9 Join-Operatoren 433
8.1.10 Set-Operatoren 436
8.1.11 Aggregatoperatoren 438
8.1.12 Generierungsoperatoren 442
8.1.13 Quantifizierungsoperatoren 444
8.1.14 Aufteilungsopertoren 446
8.1.15 Elementoperatoren 447
8.1.16 Konvertierungsoperatoren 450
8.1.17 Sonstige Operatoren 454
8.2 LINQtoSQL 455
8.2.1 Der Datenkontext 456
8.2.2 Entitaten-Klassen 459
8.2.3 Abfragen 472
8.2.4 Abfragen protokollieren 483
8.2.5 Datenbindung 484
8.3 LINQ to DataSets 484
8.4 Tipps und Tricks 487
8.4.1 Bei LINQ to SQL statt null einen Fallback-Wert erhalten 487
9 Datenbindung 489
9.1 Klassen/Tabellen ffir die Beispiele 489
9.2 Windows Forms 490
9.2.1 Steuerelemente fur die Entwurfszeit 490
9.2.2 Einfache Datenbindung 491
9.2.3 Das DataGridView-Steuerelement 506
9.2.4 Bearbeiten der Zelleninhalte 528
9.3 ASP.NET 531
9.3.1 Datenquellen 532
9.3.2 Visuelle Steuerelemente 540
10 SQL Server Reporting Services 569
10.1 Ubersicht 570
10.1.1 Lokalervs. serverbasierter Modus 570
10.1.2 Berichtsdesigner 571
10.1.3 Berichts-Viewer 572
10.1.4 Berichtsserver 573
10.2 Lokaler Modus 573
10.2.1 Entwurfeines Berichts 574
10.2.2 Eigene Assemblies verwenden 603
10.2.3 Berichte zur Laufzeit angeben 606
10.3 Serverbasierte Berichte 608
10.3.1 Voraussetzungen 608
10.3.2 Installation und ^Configuration 609
10.3.3 Entwurfeines Berichtes 610
10.3.4 Unterschiede zur Entwicklung lokaler Berichte 614
10.3.5 Berichte in die eigene Anwendung einbauen 616
10.4 Ein Blick in die nahe Zukunft 617
10.5 Tipps und Tricks 618
10.5.1 Umschalten zwischen lokalem und serverbasiertem Modus 618
10.5.2 Unterdriicken der automatischen Parametereingabe 619
Register 621
i |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Kansy, Thorsten |
author_GND | (DE-588)13606017X |
author_facet | Kansy, Thorsten |
author_role | aut |
author_sort | Kansy, Thorsten |
author_variant | t k tk |
building | Verbundindex |
bvnumber | BV023473988 |
classification_rvk | ST 253 ST 270 |
classification_tum | DAT 652f |
ctrlnum | (OCoLC)248623484 (DE-599)DNB986605190 |
dewey-full | 005.2768 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.2768 |
dewey-search | 005.2768 |
dewey-sort | 15.2768 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
discipline_str_mv | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01568nam a2200397 c 4500</leader><controlfield tag="001">BV023473988</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20090210 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">080804s2008 gw a||| |||| 00||| ger d</controlfield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">986605190</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783446414501</subfield><subfield code="9">978-3-446-41450-1</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)248623484</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)DNB986605190</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">ger</subfield></datafield><datafield tag="044" ind1=" " ind2=" "><subfield code="a">gw</subfield><subfield code="c">XA-DE-BY</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-92</subfield><subfield code="a">DE-12</subfield><subfield code="a">DE-91G</subfield><subfield code="a">DE-824</subfield><subfield code="a">DE-210</subfield><subfield code="a">DE-573</subfield><subfield code="a">DE-858</subfield><subfield code="a">DE-473</subfield><subfield code="a">DE-29T</subfield><subfield code="a">DE-M347</subfield><subfield code="a">DE-634</subfield><subfield code="a">DE-1102</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.2768</subfield><subfield code="2">22/ger</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 253</subfield><subfield code="0">(DE-625)143628:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 270</subfield><subfield code="0">(DE-625)143638:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">004</subfield><subfield code="2">sdnb</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 652f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Kansy, Thorsten</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)13606017X</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Datenbankprogrammierung mit .NET 3.5</subfield><subfield code="b">mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008</subfield><subfield code="c">Thorsten Kansy</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">München</subfield><subfield code="b">Hanser</subfield><subfield code="c">2008</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVI, 632 S.</subfield><subfield code="b">Ill.</subfield><subfield code="c">25 cm</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">Reihe .NET-Bibliothek</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Microsoft dot net 3.5</subfield><subfield code="0">(DE-588)7623913-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Microsoft dot net 3.5</subfield><subfield code="0">(DE-588)7623913-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016656266&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-016656266</subfield></datafield></record></collection> |
id | DE-604.BV023473988 |
illustrated | Illustrated |
index_date | 2024-07-02T21:35:29Z |
indexdate | 2024-07-09T21:19:35Z |
institution | BVB |
isbn | 9783446414501 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-016656266 |
oclc_num | 248623484 |
open_access_boolean | |
owner | DE-92 DE-12 DE-91G DE-BY-TUM DE-824 DE-210 DE-573 DE-858 DE-473 DE-BY-UBG DE-29T DE-M347 DE-634 DE-1102 |
owner_facet | DE-92 DE-12 DE-91G DE-BY-TUM DE-824 DE-210 DE-573 DE-858 DE-473 DE-BY-UBG DE-29T DE-M347 DE-634 DE-1102 |
physical | XVI, 632 S. Ill. 25 cm |
publishDate | 2008 |
publishDateSearch | 2008 |
publishDateSort | 2008 |
publisher | Hanser |
record_format | marc |
series2 | Reihe .NET-Bibliothek |
spelling | Kansy, Thorsten Verfasser (DE-588)13606017X aut Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 Thorsten Kansy München Hanser 2008 XVI, 632 S. Ill. 25 cm txt rdacontent n rdamedia nc rdacarrier Reihe .NET-Bibliothek Microsoft dot net 3.5 (DE-588)7623913-5 gnd rswk-swf Microsoft dot net 3.5 (DE-588)7623913-5 s DE-604 HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016656266&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Kansy, Thorsten Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 Microsoft dot net 3.5 (DE-588)7623913-5 gnd |
subject_GND | (DE-588)7623913-5 |
title | Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 |
title_auth | Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 |
title_exact_search | Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 |
title_exact_search_txtP | Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 |
title_full | Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 Thorsten Kansy |
title_fullStr | Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 Thorsten Kansy |
title_full_unstemmed | Datenbankprogrammierung mit .NET 3.5 mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 Thorsten Kansy |
title_short | Datenbankprogrammierung mit .NET 3.5 |
title_sort | datenbankprogrammierung mit net 3 5 mehrschichtige applikationen mit visual studio 2008 und ms sql server 2008 |
title_sub | mehrschichtige Applikationen mit Visual Studio 2008 und MS SQL Server 2008 |
topic | Microsoft dot net 3.5 (DE-588)7623913-5 gnd |
topic_facet | Microsoft dot net 3.5 |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016656266&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT kansythorsten datenbankprogrammierungmitnet35mehrschichtigeapplikationenmitvisualstudio2008undmssqlserver2008 |