Book description
Das umfassende Arbeitsbuch zu SQL Server 2008 R2: Wenn Sie professionell mit dem SQL Server zu tun haben, dann ist dies Ihr Buch! SQL Server 2008 R2 ist nicht einfach nur ein relationales DBMS, sondern eine komplexe Entwicklungsumgebung mit vielfältigen Angeboten und Herausforderungen für Entwickler. Die Spannbreite reicht von »klassischer« T-SQL-Programmierung über .NET-Programmierung in C# bis hin zur Geodatenverarbeitung und Complex Event Processing. Anhand eines durchgängigen Beispielszenarios werden diese Konzepte nicht nur theoretisch, sondern mit viel Praxisbezug vorgestellt: Über 1.000 Codebeispiele auf CD ermöglichen das direkte Ausprobieren der im Buch behandelten Themen. Auch Administratoren, die sich mit der SQL Server-Programmierung beschäftigen möchten, sind hier gut aufgehoben. Viele der besprochenen Techniken und Hintergrundinformationen lassen sich auch für die Wartung von SQL Servern einsetzen. Themen, wie Indizierung, Sicherheit, Abfrageoptimierung und Monitoring interessieren Entwickler und Administratoren gleichermaßen.
Table of contents
- Microsoft SQL Server 2008 R2 – Das Entwicklerbuch
- Einleitung
-
I. SQL Server-Grundlagen
- 1. Szenarien für SQL Server-Entwickler
-
2. SQL Server-Grundlagen
- Erste Schritte mit den Beispielprojekten
-
Die Komponenten von SQL Server
-
Die Datenbankmaschine
- Instanzen und Datenbanken
- Prozesse und Threads
- Non Uniform Memory Architecture – NUMA
- Das SQL Server Operating System – SQLOS
- Die Datenbankmaschine
- Kommunikation
- Client APIs für SQL Server
- Metadatenschnittstellen
- Verbindungsserver
- SQL Server auf 64-Bit-Systemen
- SQL Datenbankmail
- Tracing, Profiling und Auditing
- Extended Events
- Ein paar technische Daten der Datenbankmaschine
- SQL Server-Dienste
- Die Systemdatenbanken
- SQL Server-Editionen im Vergleich
- Hochverfügbarkeit
-
Die Datenbankmaschine
- Sicherheit
- 3. SQL Server 2008 R2: Das ist neu
- 4. Das Arbeitsbeispiel dieses Buchs
-
II. Transact-SQL & die Datenbankmaschine
- 5. Die Grundlagen von Transact-SQL
-
6. Werkzeuge für T-SQL-Entwickler: Managementstudio & Co.
- SQL Server Management Studio
- Visual Studio 2008-Datenbankprojekte und der Server Explorer
- Visio für den Datenbankentwickler
- Visual Studio Team Edition for Database Professionals
- 7. Datenbanken einrichten und verwalten
-
8. Tabellen planen und einrichten
- Bestandteile von SQL Server-Tabellen
- SQL Server-Systemdatentypen
- Feldeigenschaften
- Einschränkungen
- Tabellen in der Benutzeroberfläche einrichten
- Datenbankdiagramme einsetzen
-
Tabellen in T-SQL anlegen und verwalten
- Eine Tabelle mit T-SQL anlegen
- Den Primärschlüssel hinzufügen: PRIMARY KEY
- Abhängigkeit zu anderen Tabellen deklarieren: FOREIGN KEY
- Standardwerte vorgeben: DEFAULT
- Wertebereiche einschränken: CHECK
- Die Eindeutigkeit von Spalten festlegen: UNIQUE
- Eine Einschränkung löschen oder deaktivieren
- Eine berechnete Spalte anlegen
- Eine Spalte hinzufügen oder löschen
- Aliasdatentypen in T-SQL
- Systeminformation zu Datenbanktabellen
- Temporäre Tabellen und Tabellenvariablen
- Sehr breite Tabellen mit SPARSE DATA optimieren
-
9. Daten abfragen und auswerten
- SELECT FROM WHERE à la SQL Server
- Datensätze mit der WHERE-Klausel selektieren
- Neue Tabellen mit SELECT INTO anlegen
- Tabellen mit relationalen Operatoren verknüpfen
- Daten aggregieren und gruppieren
- Abfrageergebnisse nummerieren und partitionieren
- Unterabfragen
- Abfragen als Tabellen: Abgeleitete Tabellen
- Common Table Expressions und rekursive Abfragen
- Ergebnisse pivotieren
- NULL IS NULL IS NULL
- Stichproben mit TABLESAMPLE generieren
- Verteilte Abfragen
- 10. Daten manipulieren
-
11. Mit Transact-SQL programmieren
- Programmiersprachenelemente in T-SQL
- Ausdrücke in T-SQL
- Eingebaute Funktionen in T-SQL
-
12. Indizierung und Partitionierung
- Erste Beispiele
- Abfragepläne
- Grundlagen zu SQL Server-Indizes
- Indizes pflegen und optimieren
-
Volltextindizes verwenden
- Grenzen konventioneller Indizes
- Volltextindizierung
- Einen Volltextindex im Managementstudio anlegen
- Komponenten der Volltextindizierung
- Volltextindizes versus relationale Indizes
- Volltextindizes mit T-SQL anlegen und warten
- Dokumente indizieren
- Volltextabfragen in T-SQL
- Mit Stopwortlisten arbeiten
- Volltextindzes aufbereiten
- Indizes richtig planen
- Partitionierte Tabellen
-
13. Sicherheit
- Serverbenutzer, Datenbankbenutzer, Schemata und Rollen
- Berechtigungen und Rollen
- Kryptographie in der Datenbank
- 14. Sichten
-
15. Gespeicherte Prozeduren
- Konzepte: Die Wahrheit über gespeicherte Prozeduren
- Mit gespeicherten Prozeduren arbeiten
- Ausnahmebehandlung
- Beispiele für gespeicherte Prozeduren
- Performance-Überlegungen
- Systemprozeduren und erweiterte gespeicherte Prozeduren
- 16. Benutzerdefinierte Funktionen
-
17. Trigger und Ereignisbenachrichtigungen
- Trigger in Datenbanken
- Konzepte für DML-Trigger
- Mit Triggern in Transact-SQL arbeiten
- Tipps für DML-Trigger
-
Einsatzmöglichkeiten und Beispiele für DML-Trigger
- Trigger für die Protokollierung von Datenänderungen
- Trigger für die Protokollierung von Spaltenänderungen
- Trigger für die Überprüfung von Integritätsbedingungen
- Trigger für die Durchsetzung von Geschäftsregeln
- Trigger für die Pflege von Datenzusammenhängen
- Trigger für die Bildung von laufenden Summen
- Trigger für das Aktualisieren von Sichten
- DDL-Trigger
- Ereignisbenachrichtigungen statt DDL-Trigger einsetzen
-
18. Transaktionen und Sperren
-
Transaktionen
- Transaktionskonzepte
- Transaktionen in Transact-SQL
- Transaktionen verfolgen
- Explizite Transaktionen und Fehlerzustände
- Rollback bei nichtkritischen Fehlern mit XACT_ABORT erzwingen
- Nicht COMMIT-fähige Transaktionen
- Implizite Transaktionen
- Verschachtelte Transaktionen und Savepoints
- Verteilte Transaktionen
- Sperren
-
Transaktionen
- 19. Serverseitige T-SQL-Cursor
- 20. Performance-Optimierungen
-
21. Administration für Entwickler
- SQL Server installieren und konfigurieren
- Datenbanken sichern und wiederherstellen
- T-SQL-Kommandos für das Prüfen von Datenbanken
- Administrationsaufgaben automatisieren
- Ausfallsicherheit konfigurieren
-
III. Clients für den SQL Server entwickeln
-
22. Datenzugriff mit ADO.NET
- Die Architektur von ADO.NET
- Eine Verbindung zum Server aufbauen
- Daten ermitteln und manipulieren
-
Das verbindungslose Modell
- Das DataSet als universeller Datenspeicher
- Spalten definieren
- Primärschlüssel definieren
- Einschränkungen für Tabellen festlegen
- Tabellen mit DataRelation verbinden
- Berechnete Spalten erstellen
- Zeilen hinzufügen
- Zeilen entfernen
- Zeilen selektieren
- Weitere Möglichkeiten der Selektion
- Daten aggregieren
- Serialisierung von Objekten
-
Daten aktualisieren
- Änderungen ermitteln
- Daten mit Commands aktualisieren
- Daten mit der SqlDataAdapter-Klasse aktualisieren
- Umgang mit Parallelität
- Synchronisation von serverseitig generierten Werten
- Daten mit gespeicherten Prozeduren aktualisieren
- Command-Erstellung mit der SqlCommandBuilder-Klasse automatisieren
- Massenaktualisierungen optimieren
- Verwendung von typisierten DataSets
- Umgang mit binären Daten
- Umgang mit XML-Daten
- Fehlerbehandlung
- 23. Transaktionaler Datenzugriff
-
24. Erweiterte Themen
- Multiple Active Resultsets (MARS)
- Asynchroner Datenzugriff
- Ergebnisse mit Abfragebenachrichtigungen überwachen
- Große Datenmengen mit SqlBulkCopy kopieren
- Anbieterunabhängiger Datenzugriff
- Abrufen von Datenbankmetadaten
- Information Schema Views
- Datenbankschema über SqlConnection ermitteln
- Die Metadaten einer Abfrage ermitteln
- Metadaten mit SMO ermitteln
- Datenzugriffsanalyse
- 25. Daten an die Oberfläche binden
- 26. Einführung in Language Integrated Query (LINQ)
-
27. LINQ to SQL
- Object Relational Mapper (O/RM)
- LINQ to SQL oder LINQ to Entities – was ist besser, was ist die Zukunft?
- Wie es bisher war – ADO.NET 2.0 vs. LINQ in .NET 3.5
- LINQ to SQL am Beispiel – Die ersten Schritte
- Protokollieren der generierten T-SQL-Befehle
- Verzögerte Abfrageausführung und kaskadierte Abfragen
- Eager- und Lazy-Loading – Steuern der Ladestrategien bei 1:n-Relationen
- Trennen des Abfrageergebnisses vom Kontext
- Daten verändern, speichern, einfügen und löschen
- Transaktionen
-
28. LINQ to Entities – Programmieren mit dem Entity Framework
- Voraussetzungen für das Verstehen dieses Kapitels
- LINQ to Entities – ein erstes Praxisbeispiel
-
Abfrage von Daten eines Entitätsmodells
- Abfrage von Daten mit LINQ to Entities-Abfragen
- Wie Abfragen zum Datenprovider gelangen – Entity SQL (eSQL)
- Anpassen des Namens der Entitätenmenge
- Generierte SQL-Anweisungen unter die Lupe nehmen
- Lazy- und Eager-Loading in Entity Framework
- Anonymisierungsvermeidung bei Abfragen in verknüpften Tabellen
- Kompilierte Abfragen
- Daten verändern, speichern, einfügen und löschen
- Ausblick
-
29. Mit SQL Server Compact Edition entwickeln
- SQL Server Compact in der Übersicht
- Mit mobilen SQL Server-Datenbanken arbeiten
-
Mobile SQL Server-Anwendungen entwickeln
- Ein Projekt einrichten
- Datenverbindungen, Verweise und Datenquellen konfigurieren
- DataGrid für die Anzeige von Artikeldaten einfügen
- Das DataGrid mit einer Combobox filtern
- Formular für die Datenbearbeitung hinzufügen
- ADO.NET mit SQL Server Compact verwenden
- Cursororientiertes Arbeiten mit SqlCeResultSet
- Daten mit SQL Server synchronisieren
- Offline-Clients und das Sync Framework
-
22. Datenzugriff mit ADO.NET
-
IV. Datenbankobjekte mit .NET entwicklen
- 30. Mit der SQLCLR arbeiten
- 31. Datenbankobjekte mit der SQLCLR entwickeln
-
32. SQL Server mit .NET verwalten
- Grundlagen der Server Management Objects
- SMO-Programmierverfahren
-
Praktische Beispiele
- Eine neue Datenbank einrichten
- Belegten und freien Speicherplatz anzeigen
- Server- und Datenbankbenutzer anlegen
- Eine vollständige Datenbanksicherung durchführen
- Eine vorhandene Tabelle ändern
- Datenbankobjekte in andere Datenbanken kopieren
- Eine Assembly installieren und eine Funktion einrichten
- Einen Wartungsjob einrichten
- Globale Suche nach Objektnamen
- Ein Skript für alle Tabellen und Beziehungen generieren
-
V. Beyond relational
- 33. Streaming-Daten mit FILESTREAM verarbeiten
- 34. Geoinformationen mit geography und geometry verarbeiten
- 35. Hierarchische Daten mit hierarchyid verarbeiten
- 36. Von XML nach T-SQL und zurück
- 37. Der xml-Datentyp
- 38. Asynchrone Verarbeitung mit dem Service Broker
- 39. Complex Event Processing mit StreamInside
- A. Über die Autoren
- Stichwortverzeichnis
Product information
- Title: Microsoft SQL Server 2008 R2 - Das Entwicklerbuch
- Author(s):
- Release date: November 2010
- Publisher(s): Microsoft Press Deutschland
- ISBN: 97833866455146
You might also like
book
Microsoft SQL Server 2012 - Das Handbuch
Dieses Buch ist der umfassende Leitfaden zum Arbeiten mit der cloud-fähigen Informationsplattform und Datenbank-Unternehmenslösung von Microsoft.
book
Datenbankentwicklung lernen mit SQL Server 2017, 2nd Edition
SQL Server 2017 und die kostenlose Version SQL Server 2017 Express sind ideal, um in die …
book
Windows Presentation Foundation - Crashkurs. 2. aktualisierte Auflage
Windows Presentation Foundation (WPF) ist ein Framework für Benutzerschnittstellen in Applikationen, die unter Windows ausgeführt werden …
book
Handbuch der .NET 4.0-Programmierung. Band 1: C# 2010 und .NET-Grundlagen
Das .NET Framework 4.0 eröffnet Entwicklern viele neue Möglichkeiten. Autor Rolf Wenger geht in diesem Buch …