SQL Server 2014: das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server]
Gespeichert in:
Hauptverfasser: | , , |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
Bonn
Galileo Press
2015
|
Ausgabe: | 6., aktualisierte Aufl. |
Schriftenreihe: | Galileo Computing
|
Schlagworte: | |
Online-Zugang: | Inhaltstext Inhaltsverzeichnis |
Beschreibung: | Bis 2. Aufl. u.d.T.: Mertins, Dirk: Das Programmierhandbuch SQL Server |
Beschreibung: | 1308 S. Ill., graph. Darst. 240 mm x 168 mm |
ISBN: | 9783836230445 3836230445 |
Internformat
MARC
LEADER | 00000nam a22000008c 4500 | ||
---|---|---|---|
001 | BV042219448 | ||
003 | DE-604 | ||
005 | 20150120 | ||
007 | t | ||
008 | 141202s2015 gw ad|| |||| 00||| ger d | ||
015 | |a 14,N33 |2 dnb | ||
016 | 7 | |a 1054672059 |2 DE-101 | |
020 | |a 9783836230445 |c Gb. : EUR 69.90 (DE), EUR 71.90 (AT), sfr 91.90 (freier Pr.) |9 978-3-8362-3044-5 | ||
020 | |a 3836230445 |9 3-8362-3044-5 | ||
024 | 3 | |a 9783836230445 | |
035 | |a (OCoLC)887891085 | ||
035 | |a (DE-599)DNB1054672059 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a ger | |
044 | |a gw |c XA-DE-NW | ||
049 | |a DE-523 |a DE-859 |a DE-29T |a DE-11 |a DE-573 |a DE-M347 |a DE-1102 |a DE-20 | ||
082 | 0 | |a 005.7565 |2 22/ger | |
084 | |a ST 271 |0 (DE-625)143639: |2 rvk | ||
084 | |a 004 |2 sdnb | ||
100 | 1 | |a Mertins, Dirk |e Verfasser |0 (DE-588)131807706 |4 aut | |
245 | 1 | 0 | |a SQL Server 2014 |b das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] |c Dirk Mertins ; Jörg Neumann ; Andreas Kühnel |
246 | 1 | 3 | |a Microsoft SQL Server 2014 |
250 | |a 6., aktualisierte Aufl. | ||
264 | 1 | |a Bonn |b Galileo Press |c 2015 | |
300 | |a 1308 S. |b Ill., graph. Darst. |c 240 mm x 168 mm | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Galileo Computing | |
500 | |a Bis 2. Aufl. u.d.T.: Mertins, Dirk: Das Programmierhandbuch SQL Server | ||
650 | 0 | 7 | |a ADO.NET Entity Framework |0 (DE-588)7732216-2 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a LINQ |0 (DE-588)7582603-3 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a ADO.NET |0 (DE-588)4678430-5 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a SQL Server 2014 |0 (DE-588)1059928450 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Transact SQL |0 (DE-588)4298853-6 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a SQL Server 2014 |0 (DE-588)1059928450 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a SQL Server 2014 |0 (DE-588)1059928450 |D s |
689 | 1 | 1 | |a Transact SQL |0 (DE-588)4298853-6 |D s |
689 | 1 | 2 | |a ADO.NET |0 (DE-588)4678430-5 |D s |
689 | 1 | 3 | |a LINQ |0 (DE-588)7582603-3 |D s |
689 | 1 | 4 | |a ADO.NET Entity Framework |0 (DE-588)7732216-2 |D s |
689 | 1 | |5 DE-604 | |
700 | 1 | |a Neumann, Jörg |e Verfasser |4 aut | |
700 | 1 | |a Kühnel, Andreas |e Verfasser |0 (DE-588)1028663412 |4 aut | |
856 | 4 | 2 | |m X:MVB |q text/html |u http://deposit.dnb.de/cgi-bin/dokserv?id=4739861&prov=M&dok_var=1&dok_ext=htm |3 Inhaltstext |
856 | 4 | 2 | |m DNB Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=027657983&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
943 | 1 | |a oai:aleph.bib-bvb.de:BVB01-027657983 |
Datensatz im Suchindex
_version_ | 1809770727652458496 |
---|---|
adam_text |
INHALT
INHALT
VORWORT 33
TEILI GRUNDLAGEN
1 INSTALLATION UND AKTUALISIERUNG
VON SQL SERVER 2014
37
1.1 UEBERBLICK UEBER DIE VERFUEGBAREN SQL-SERVER-2014-VERSIONEN 37
1.2 INSTALLATIONSVORAUSSETZUNGEN 38
1.3 INSTALLATION VON SQL SERVER 2014 39
1.4 INSTALLATION DER SQL-SERVER-BEISPIELDATENBANK 48
1.5 AKTUALISIERUNG AUF SQL SERVER 2014 51
1.5.1 DER UPGRADE ADVISOR 51
1.5.2 DURCHFUEHRUNG DER AKTUALISIERUNG 58
2 DATENBANKGRUNDLAGEN 65
2.1 SERVER UND CLIENT 65
2.2 RELATIONALE DATENBANKEN 66
2.2.1 STRUKTURELLER AUFBAU VON TABELLEN 69
2.2.2 IM ZUSAMMENHANG MIT TABELLEN GEBRAEUCHLICHE FACHBEGRIFFE 70
2.2.3 SCHLUESSEL 71
2.2.4 BEZIEHUNGSARTEN 80
2.3 DATENBANKMANAGEMENTSYSTEM 83
2.4 INTEGRITAETSARTEN 86
3 LOGISCHER DATENBANKENTWURF 89
3.1 GRUNDLAGEN DES DATENBANKENTWURFS 89
5
HTTP://D-NB.INFO/1054672059
INHALT
3.2 NORMALISIERUNGSREGELN (NORMALFORMEN) 90
3.2.1 ERSTE NORMALFORM 91
3.2.2 ZWEITE NORMALFORM 94
3.2.3 DRITTE NORMALFORM 95
3.3 NORMALISIERUNG IN DER PRAXIS 97
3.4 DENORMALISIERUNG 100
3.5 ENTITY-RELATIONSHIP-DIAGRAMME 102
4 DIE
OBERFLAECHE VON
SQL SERVER 2014
105
4.1 DAS SQL SERVER
MANAGEMENT STUDIO 105
4.1.1 DER OBJEKT-EXPLORER 112
4.2 DAS BEARBEITEN VON SQL-ANWEISUNGEN
IM MANAGEMENT STUDIO 122
4.2.1 DER SQL-ABFRAGE-EDITOR 122
4.2.2 DER ERGEBNISBEREICH 131
4.2.3 DER ABFRAGE-DESIGNER 135
4.3 SQL-SERVER-DOKUMENTATION UND HILFEN ZUR PROGRAMMIERUNG 137
4.3.1 DIE SQL-SERVER-DOKUMENTATION 137
4.3.2 SQL-SERVER-INTELLISENSE 139
4.3.3 DER VORLAGEN-EXPLORER 140
4.3.4 DIE SKRIPT-GENERIERUNG 143
4.3.5 DIE VERWENDUNG VON LESEZEICHEN 144
4.4 UEBERBLICK UEBER DIE SQL-SERVER-DIENSTE 147
4.5 DAS DIENSTPROGRAMM SQLCMD 148
4.6 SQL-SERVER-INTEGRATION IN DIE WINDOWS POWERSHELL 151
4.6.1 ALLGEMEINER AUFRUF DER POWERSHELL 152
4.6.2 AUFRUF DER POWERSHELL MIT SQL-SERVER-INTEGRATION 153
4.6.3 ZUGRIFF AUF SQLSERVER MIT DER WINDOWS POWERSHELL 154
4.6.4 DIE SQL-SERVER-CMDLETS 157
4.7 DER SQL-SERVER-AKTIVITAETSMONITOR 158
4.8 BERICHTE 160
6
INHALT
TEIL II SQL-PROGRAMMIERUNG
5 GRUNDLEGENDE ABFRAGETECHNIKEN
IOEB
5.1 EINFUEHRUNG IN SQL 163
5.2 SQL-GRUNDLAGEN 164
5.2.1 FORMATIERUNG 165
5.2.2 BEZEICHNER 165
5.2.3 SYSTEMDATENTYPEN 166
5.2.4 INFORMATIONEN ZU DEN DATENTYPEN EINER TABELLE 171
5.2.5 VERWENDUNG UND KENNZEICHNUNG VON ZAHLEN, ZEICHENKETTEN
UND DATUMS-/UHRZEITWERTEN 172
5.2.6 KOMMENTARE 173
5.3 GRUNDLEGENDE OPERATOREN 173
5.3.1 ARITHMETISCHE OPERATOREN 174
5.3.2 ZEICHENKETTENOPERATOR 174
5.3.3 VERGLEICHSOPERATOREN 174
5.3.4 LOGISCHE OPERATOREN 175
5.4 EINFACHE ABFRAGEN 177
5.4.1 USE 177
5.4.2 SELECT. FROM 178
5.4.3 BERECHNETE SPALTEN IN ABFRAGEN 181
5.4.4 DISTINCT 183
5.4.5 ORDER BY-KLAUSEL 184
5.4.6 WHERE-KLAUSEL 187
5.5 AUSWAHLOPERATOREN 192
5.5.1 IS (NOT) NULL-AUSWAHLOPERATOR 193
5.5.2 BETWEEN-AUSWAHLOPERATOR 194
5.5.3 IN-AUSWAHLOPERATOR 196
5.5.4 LIKE-AUSWAHLOPERATOR 196
5.6 AGGREGATFUNKTIONEN 200
5.7 UNTERABFRAGEN 204
5.7.1 DEFINITION DER WERTELISTE DES IN-OPERATORS DURCH
EINE UNTERABFRAGE 206
5.7.2 VERWENDUNG DER OPERATOREN ALL
UND ANY MIT UNTERABFRAGEN 207
5.7.3 KORRELIERTE UNTERABFRAGEN 209
7
INHALT
5.8 ZUSAMMENFASSUNG, GRUPPIERUNG UND BESCHRAENKUNG
VON ABFRAGEERGEBNISSEN 210
5.8.1 VERKNUEPFUNG MEHRERER ABFRAGEERGEBNISSE DURCH UNION 210
5.8.2 BESCHRAENKUNG DES ABFRAGEERGEBNISSES MIT TOP (N) 212
5.8.3 SEITENWEISES ABRUFEN VON DATENSAETZEN 215
5.8.4 GROUP BY-KLAUSEL 217
5.9 DIE MENGEN-OPERATOREN EXCEPT UND
INTERSECT 222
5.9.1 DER EXCEPT-OPERATOR 223
5.9.2 DER INTERSECT-OPERATOR 224
5.10 AUSGABEN MIT PRINT
UND SELECT 225
6 GRUNDLAGEN DER
SQL-PROGRAMMIERUNG
227
6.1 DAS STAPELTRENNZEICHEN CO 227
6.2 (LOKALE) VARIABLEN 229
6.2.1 VARIABLENDEKLARATION 229
6.2.2 WERTEZUWEISUNG AN EINE VARIABLE 230
6.2.3 KOMBINIERTE DEKLARATION UND WERTEZUWEISUNG 231
6.2.4 INKREMENT UND DEKREMENT 232
6.2.5 GUELTIGKEITSBEREICH VON VARIABLEN 233
6.2.6 VERWENDUNG VON VARIABLEN 234
6.2.7 LOKALE UND
GLOBALE VARIABLEN IN SQL
SERVER 234
6.2.8 WERTEZUWEISUNG AN VARIABLEN DURCH ABFRAGEN 234
6.3 ABLAUFSTEUERUNG 238
6.3.1 BLOECKE 238
6.3.2 IF. ELSE 238
6.3.3 IF EXISTS 241
6.3.4 WHILE-SCHLEIFE 243
6.3.5 RETURN 246
6.3.6 GOTO 246
6.3.7 WAITFOR 247
6.4 FALLUNTERSCHEIDUNGEN 248
6.4.1 DIE CASE-FUNKTION 248
6.4.2 DIE IIF-FUNKTION 254
6.4.3 DIECHOOSE-FUNKTION 255
6.4.4 DIE ISNULL-FUNKTION 255
8
INHALT
6.5 FUNKTIONEN 256
6.5.1 KONFIGURATIONSFUNKTIONEN 257
6.5.2 DATUMS-/UHRZEITFUNKTIONEN 257
6.5.3 ZEICHENFOLGENFUNKTIONEN 263
6.5.4 MATHEMATISCHE FUNKTIONEN 267
6.5.5 FUNKTIONEN ZUR STATUSABFRAGE 268
6.5.6 KONVERTIERUNGSFUNKTIONEN 268
6.5.7 FORMATIERUNG VON AUSDRUECKEN MIT DER FORMAT-FUNKTION 275
6.6 DYNAMISCHE SQL-ANWEISUNGEN 277
6.6.1 AUSFUEHRUNG DYNAMISCHER ANWEISUNGEN MIT EXECUTE 278
6.6.2 AUSFUEHRUNG DYNAMISCHER ANWEISUNGEN MIT SP_EXECUTESQL 278
6.7 FEHLER IN SQLSERVER UND IHRE BEHANDLUNG 279
6.7.1 STRUKTUR VON FEHLERMELDUNGEN IN SQLSERVER 279
6.8 FEHLERBEHANDLUNG 282
6.8.1 FEHLERBEHANDLUNG MIT TRY UND
CATCH 282
6.8.2 FUNKTIONEN ZUR FEHLERBEHANDLUNG 286
6.8.3 GEGENUEBERSTELLUNG VON TRY.
CATCH UND @@ERROR 289
6.8.4 ABBRUCHVERURSACHENDE FEHLER 291
6.8.5 ERSTELLUNG BENUTZERDEFINIERTER FEHLERMELDUNGEN 291
6.8.6 PROGRAMMGESTEUERTE FEHLERAUSLOESUNG 294
6.8.7 FEHLERAUSLOESUNG UNTER VERWENDUNG VON PARAMETERN 295
6.8.8 LOESCHEN VON BENUTZERDEFINIERTEN FEHLERMELDUNGEN 302
7 MEHRTABELLENABFRAGEN
303
7.1 TABELLEN VERKNUEPFEN (JOIN-ANWEISUNG) 303
7.1.1 EINBINDUNG ZWEIER TABELLEN IN DIE SELECT-ANWEISUNG 303
7.1.2 INNERE VERKNUEPFUNG (INNER JOIN) 305
7.1.3 AEUSSERE VERKNUEPFUNG (OUTER JOIN) 308
7.1.4 MEHRFACHE JOIN-ANWEISUNGEN 309
7.1.5 KREUZVERKNUEPFUNG (CROSS
JOIN) 310
7.1.6 UMKEHRUNG DER FUNKTIONSWEISE DES INNER
JOINS 311
7.2 ABFRAGEN UNTER VERWENDUNG MEHRERER SERVER 313
7.2.1 VOLLGEKENNZEICHNETE (VOLLQUALIFIZIERTE) NAMEN 313
7.2.2 EINRICHTUNGEINES VERBINDUNGSSERVERS 314
9
INHALT
8 ERSTELLEN UND
AENDERN VON DATENBANKEN
315
8.1 ERSTELLEN EINER EINFACHEN DATENBANK 315
8.2 EINFLUSS DER MODEL-DATENBANK AUF DAS ERSTELLEN NEUER
DATENBANKEN 323
8.3 LOESCHEN VON
DATENBANKEN 324
8.4 ERSTELLEN EINER DATENBANK MIT MEHREREN DATEIEN 324
8.5 NACHTRAEGLICHE AENDERUNGEN AN DATENBANKDATEIEN 327
8.5.1 DATEIEN HINZUFUEGEN 327
8.5.2 DATEIEIGENSCHAFTEN AENDERN 329
8.5.3 DATEIEN LOESCHEN 329
8.6 ERSTELLEN EINER DATENBANK MIT MEHREREN DATEIGRUPPEN 330
8.7 DATENBANKEN VERKLEINERN 333
8.8 DATENBANKDATEIEN VERKLEINERN 335
8.9 GESPEICHERTE SYSTEMPROZEDUREN (STORED PROCEDURES) ZUR
DATENBANKVERWALTUNG 336
8.10 DATENBANK-MOMENTAUFNAHMEN 337
8.10.1 ERSTELLEN EINER DATENBANK-MOMENTAUFNAHME 337
8.10.2 INTERNE VERWALTUNG EINER DATENBANK-MOMENTAUFNAHME 340
8.10.3 ERSTELLEN EINES SNAPSHOTS FUER EINE DATENBANK MIT MEHREREN
DATENDATEIEN 343
8.10.4 WEITERE INFORMATIONEN ZU MOMENTAUFNAHMEN 345
8.10.5 DATENBANK-MOMENTAUFNAHME LOESCHEN 345
8.11 RAID-SYSTEME 346
8.11.1 RAID 0 346
8.11.2 RAID1 347
8.11.3 RAID 3 348
8.11.4 RAID 5 349
8.12 TRANSPARENTE DATENVERSCHLUESSELUNG 350
8.12.1 DIE STRUKTUR DER TRANSPARENTEN DATENVERSCHLUESSELUNG
IN SQL
SERVER 350
9 ERSTELLEN VON
TABELLEN
353
9.1 DIE GRUNDLEGENDE SYNTAX ZUR TABELLENERSTELLUNG 353
9.1.1 BERECHNETE SPALTEN 355
10
INHALT
9.1.2 DEFINITION EINER IDENTITAETSSPALTE 356
9.1.3 SPARSE-EIGENSCHAFT EINER TABELLENSPALTE 358
9.1.4 FESTLEGUNG DES PHYSISCHEN SPEICHERORTS 362
9.1.5 VERWENDUNG VON FILESTREAM ZUR
SPEICHERUNG VON DATEN
IM DATEISYSTEM 362
9.2 TABELLEN AENDERN 370
9.2.1 SPALTEN HINZUFUEGEN ADD 371
9.2.2 SPALTEN AENDERN ALTER COLUMN 372
9.2.3 SPALTEN LOESCHEN DROP
COLUMN 373
9.3 LOESCHEN VON TABELLEN 373
9.4 IMPLEMENTIERUNG DER DATENINTEGRITAET 374
9.4.1 DIE EINSCHRAENKUNGSARTEN IM UEBERBLICK 374
9.4.2 DEFINITION VON EINSCHRAENKUNGEN 375
9.4.3 EIGENSCHAFTEN VON CONSTRAINTS 376
9.4.4 LOESCH-UND AENDERUNGSWEITERGABE 380
9.5 ANWENDUNGSBEISPIEL ZU EINSCHRAENKUNGEN 381
9.6 NACHTRAEGLICHE DEFINITION VON EINSCHRAENKUNGEN 384
9.7 VERWALTUNG VON EINSCHRAENKUNGEN 384
9.7.1 DEAKTIVIERUNG UND AKTIVIERUNG VON EINSCHRAENKUNGEN 385
9.7.2 LOESCHEN EINER
EINSCHRAENKUNG 386
9.8 TEMPORAERE TABELLEN 386
9.8.1 LOKALE TEMPORAERE TABELLEN 386
9.8.2 GLOBALE TEMPORAERE TABELLEN 387
9.9 PARTITIONIERUNG VON TABELLEN 389
9.9.1 ERSTELLUNG EINER PARTITIONSFUNKTION 390
9.9.2 ERSTELLUNGEINES PARTITIONSSCHEMAS 392
9.9.3 ERSTELLUNG EINER PARTITIONIERTEN TABELLE 394
10 SPEICHERUNG
VON DATEN
IN FILETABLES
397
10.1 VORAUSSETZUNGEN FUER DIE VERWENDUNG VON FILETABLES 397
10.1.1 AKTIVIERUNG VON FILESTREAM AUF
SERVEREBENE 397
10.1.2 VORHANDENSEIN EINER DATENBANK MIT EINER FILESTREAM-DATEI-
GRUPPE UND KONFIGURIERTEM NICHTTRANSAKTIONALEM ZUGRIFF 398
10.2 ERSTELLUNG EINER FILETABLE 400
11
INHALT
10.3 ZUGRIFF AUF EINE FILETABLE 402
10.4 SICHTEN ZUR ABFRAGE VORHANDENER FILETABLES IN EINER DATENBANK 404
11 VERWENDUNG DER RAEUMLICHEN
UND HIERARCHISCHEN
DATENTYPEN 405
11.1 RAEUMLICHE DATENTYPEN 405
11.1.1 DER GEOMETRY-DATENTYP 406
11.1.2 DER GEOGRAPHY-DATENTYP 406
11.1.3 KOORDINATENUEBERGABE AN RAEUMLICHE DATENTYPEN 407
11.1.4 DAS KLASSENMODELL RAEUMLICHER DATENTYPEN 407
11.1.5 GRUNDLEGENDE TECHNIKEN ZUR VERWENDUNG RAEUMLICHER
DATENTYPEN 414
11.1.6 ALLGEMEINE VERWENDUNG RAEUMLICHER DATENTYPEN 417
11.1.7 METHODEN ZUR VERARBEITUNG RAEUMLICHER DATEN 418
11.1.8 CIRCULARARCS 429
11.1.9 BEISPIEL FUER DIE VERWERTUNG DES GEOGRAPHY-DATENTYPS 434
11.1.10 INDIZIERUNG VON GEODAETEN 437
11.2 DER HIERARCHISCHE DATENTYP 441
11.2.1 DIE METHODEN DES HIERARCHISCHEN DATENTYPS 443
12 DATEN VERWALTEN 451
12.1 GRUNDLEGENDE BEFEHLE ZUR DATENSATZMANIPULATION 451
12.1.1 EINFUEGEN VON DATENSAETZEN MIT INSERT 451
12.1.2 DATEN AKTUALISIEREN MIT UPDATE 456
12.1.3 LOESCHEN VON DATEN MIT DELETE 459
12.2 VERWENDUNG DES ZEILENKONSTRUKTORS 460
12.3 KOMBINIERTE AUSWAHL-/EINFUEGEANWEISUNGEN 461
12.3.1 INSERT. SELECT 462
12.3.2 SELECT. INTO 462
12.4 DIE
MERGE-ANWEISUNG 464
12.4.1 GRUNDLAGEN DER MERGE-ANWEISUNG 464
12.4.2 FILTERUNG VON DATENSAETZEN 468
12.4.3 DIE OUTPUT-KLAUSEL 469
12
INHALT
12.5 MASSENKOPIERPROGRAMME 470
12.5.1 BULKINSERT 470
12.5.2 BCP 472
13 BENUTZERVERWALTUNG UND SCHEMAS 473
13.1 AUTHENTIFIZIERUNG AM SERVER 474
13.1.1 EINRICHTEN EINES LOGINS MIT WINDOWS-AUTHENTIFIZIERUNG 475
13.1.2 EINRICHTEN EINES LOGINS MIT SQL-SERVER-AUTHENTIFIZIERUNG 476
13.2 DATENBANKZUGRIFF ERTEILEN 478
13.3 ZUSAMMENFASSUNG VON BENUTZERN ZU ROLLEN 481
13.3.1 FESTE SERVERROLLEN 482
13.3.2 FESTE DATENBANKROLLEN 483
13.3.3 HINZUFUEGEN EINES BENUTZERS ZU EINER ROLLE 486
13.4 RECHTEVERGABE AN BENUTZER UND ROLLEN 487
13.4.1 OBJEKTBERECHTIGUNGEN 488
13.4.2 ANWEISUNGSBERECHTIGUNGEN 488
13.4.3 SQL-ANWEISUNGEN ZUR RECHTEVERGABE 490
13.5 DEAKTIVIERUNG UND AKTIVIERUNG VON LOGINS UND
DATENBANKBENUTZERN 494
13.6 VORDEFINIERTE KONTEN AUF SERVER- UND DATENBANKEBENE 496
13.6.1 DAS LOGIN SYSTEM
ADMINISTRATOR (SA) 497
13.6.2 DER DATENBANKBENUTZER GUEST 498
13.7 SCHEMA 499
13.7.1 OBJEKTVERWALTUNG BIS SQL SERVER 2000 500
13.7.2 OBJEKTVERWALTUNG SEIT SQL
SERVER 2005 501
13.7.3 ERSTELLEN EINES SCHEMAS 501
13.7.4 NAMENSAUFLOESUNG BEI FEHLENDER SCHEMA-ANGABE 504
14 EIGENSTAENDIGE DATENBANKEN
505
14.1 DAS KONZEPT
DER EIGENSTAENDIGEN DATENBANKEN 505
14.2 KONFIGURATION DES SERVERS ZUR VERWENDUNG EIGENSTAENDIGER
DATENBANKEN 505
14.3 ERSTELLUNG EINER EIGENSTAENDIGEN DATENBANK 506
14.4 IDENTIFIZIERUNG EIGENSTAENDIGER DATENBANKEN 507
13
INHALT
14.5 BESONDERHEITEN DER BENUTZERVERWALTUNG EIGENSTAENDIGER
DATENBANKEN 508
14.6 VERBINDUNGSAUFBAU ZU EINER EIGENSTAENDIGEN DATENBANK 509
14.7 KONVERTIERUNG EINER DATENBANK IN EINE EIGENSTAENDIGE DATENBANK 511
14.7.1 DURCHFUEHRUNG DER KONVERTIERUNG 512
14.7.2 KONVERTIERUNG VON BENUTZERN 513
14.7.3 IDENTIFIZIERUNG DATENBANKUEBERGREIFENDER ELEMENTE 513
14.8 MIGRATION EINER EIGENSTAENDIGEN DATENBANK AUF EINEN ANDEREN SERVER
. 514
14.8.1 SICHERUNG EINER EIGENSTAENDIGEN DATENBANK AUF DEM QUELLSERVER 515
14.8.2 WIEDERHERSTELLUNG EINER EIGENSTAENDIGEN DATENBANK AUF
DEM ZIELSERVER 515
15 SICHTEN
517
15.1 EINSATZ VON SICHTEN 518
15.2 VERWALTEN VON SICHTEN 520
15.2.1 ERSTELLEN EINER SICHT 520
15.2.2 AENDERN EINER SICHT 522
15.2.3 LOESCHEN EINER SICHT 522
15.3 DATENMANIPULATIONSANWEISUNGEN AUF EINE SICHT 523
15.3.1 DML-ANWEISUNGEN AUF EINE SICHT OHNE WHERE-KLAUSEL 523
15.3.2 DML-ANWEISUNGEN AUF EINE SICHT MIT WHERE-KLAUSEL 524
15.4 SYSTEMSICHTEN VON SQL SERVER 528
15.4.1 INFORMATIONSSCHEMASICHTEN 529
15.4.2 SYSTEMSICHTEN IM SCHEMA SYS 530
16 PROGRAMMIERUNG
VON GESPEICHERTEN
PROZEDUREN
531
16.1 UEBERBLICK UEBER DIE VERWENDUNG VON GESPEICHERTEN PROZEDUREN
IN SQL
SERVER 531
16.2 ERSTELLUNG UND AUFRUF VON GESPEICHERTEN PROZEDUREN 535
16.2.1 GRUNDLEGENDE SYNTAX ZU ERSTELLUNG EINER GESPEICHERTEN PROZEDUR.
535
16.2.2 VERWENDUNG VON EINGABEPARAMETERN 536
14
INHALT
16.2.3 DIE VERSCHIEDENEN ARTEN DER PARAMETERUEBERGABE 540
16.2.4 VERWEISBEZOGENE UEBERGABE 542
16.2.5 VERWENDUNG VON AUSGABEPARAMETERN 545
16.2.6 VERWENDUNGEINES RUECKGABESTATUSCODES 548
16.3 TABELLENUEBERGABE AN EINE GESPEICHERTE PROZEDUR 553
16.4 OPTIONEN VON GESPEICHERTEN PROZEDUREN 555
16.4.1 ENCRYPTION 555
16.4.2 RECOMPILE 558
16.4.3 RESULTSETS 559
16.4.4 EXECUTE AS 560
17 PROGRAMMIERUNG
VON BENUTZERDEFINIERTEN
FUNKTIONEN 563
17.1 UEBERBLICK UEBER BENUTZERDEFINIERTE FUNKTIONEN 563
17.2 SKALARE FUNKTIONEN (SKALARWERTFUNKTIONEN) 564
17.3 INLINEFUNKTIONEN (TABELLENWERTFUNKTIONEN) 568
17.4 TABELLENWERTFUNKTION MIT MEHREREN ANWEISUNGEN 571
17.5 AENDERN UND LOESCHEN VON
BENUTZERDEFINIERTEN FUNKTIONEN 574
17.5.1 AENDERN EINER BENUTZERDEFINIERTEN FUNKTION 574
17.5.2 LOESCHEN EINER BENUTZERDEFINIERTEN FUNKTION 574
17.6 VERWENDUNG DES DATENTYPS TABLE ALS LOKALE VARIABLE 574
17.6.1 VERWENDUNG VON EINSCHRAENKUNGEN 577
18 PROGRAMMIERUNG
UND EINSATZ VON
TRIGGERN
579
18.1 DML-TRIGGER 579
18.1.1 PROGRAMMIERUNG VON DML-TRIGGERN 581
18.2 DDL-TRIGGER 601
18.2.1 DDL-TRIGGER MIT SERVERBEREICH 601
18.2.2 DDL-TRIGGER MIT DATENBANKBEREICH 604
18.2.3 INFORMATIONEN ZUR AUSLOESUNG VON DDL-TRIGGERN 606
15
INHALT
19 NACH
VERFOLGUNG
VON DATENAENDERUNGEN 607
19.1 DIE MOEGLICHKEITEN ZUR NACHVERFOLGUNG VON DATENAENDERUNGEN:
CHANGE DATA CAPTURE UND DIE AENDERUNGSNACHVERFOLGUNG 607
19.2 CHANGE DATA CAPTURE 608
19.2.1 KONFIGURATION DER DATENBANK ZUR VERWENDUNG VON
CHANGE DATA CAPTURE 609
19.2.2 KONFIGURATION VON CHANGE DATA CAPTURE ZUR UEBERWACHUNG
EINER TABELLE 610
19.2.3 DIE AUFZEICHNUNGSINSTANZ 613
19.2.4 VERWENDUNG DER ABFRAGEFUNKTIONEN 615
19.2.5 ZYKLISCHE ABFRAGEN 620
19.2.6 ABFRAGEN AUF EINEN ZEITBEREICH 621
19.2.7 ERSTELLUNG VON DATETIME-WRAPPERFUNKTIONEN FUER DIE ABFRAGE
AUF ZEITBEREICHE 622
19.3 AENDERUNGSNACHVERFOLGUNG 623
20 EREIGNISBENACHRICHTIGUNGEN (EVENT
NOTIFICATIONS) 629
20.1 KONFIGURATION EINER DATENBANK ZUR NUTZUNG DES SERVICE
BROKERS 630
20.2 KONFIGURATION DES ZIELDIENSTES 631
20.2.1 EINRICHTUNG DER WARTESCHLANGE 631
20.2.2 ERSTELLUNG DES DIENSTES 631
20.2.3 EINRICHTUNG DER ROUTE 632
20.3 ERSTELLEN EINER EREIGNISBENACHRICHTIGUNG 633
20.4 AUSLOESEN UND EMPFANGEN EINER EREIGNISBENACHRICHTIGUNG 634
20.5 SERVICE-BROKER-AKTIVIERUNG 636
20.5.1 ERSTELLUNG DER AKTIVIERUNGSPROZEDUR 636
20.5.2 MODIFIZIERUNG DER WARTESCHLANGE ZUR VERWENDUNG DER INTERNEN
AKTIVIERUNG 639
20.6 LOESCHEN DER ERSTELLTEN
OBJEKTE 640
21 ERSTELLUNG
UND EINSATZ EINES
CURSORS 64I
21.1 FUNKTIONSWEISE EINES CURSORS 641
21.2 ERSTELLUNG EINES
CURSORS 643
16
INHALT
21.3 OEFFNEN EINES CURSORS 645
21.4 DAS ABRUFEN VON DATENSAETZEN AUS EINEM CURSOR 646
21.4.1 AUFRUF EINER FETCH-ANWEISUNG OHNE
VERWENDUNG VON VARIABLEN . 646
21.4.2 AUFRUF EINER FETCH-ANWEISUNG UNTER VERWENDUNG VON VARIABLEN .
647
21.4.3 DIE VERWENDUNG VON POSITIONSANGABEN ZUM ABRUF VON DATEN
AUS EINEM CURSOR 647
21.5 SCHLIESSEN UND LOESCHEN EINES CURSORS 655
21.6 SCHLEIFENPROGRAMMIERUNG ZUM AUTOMATISCHEN DURCHLAUFEN
EINES CURSORS 656
21.7 DATEN IN DER CURSORAUSWAHL AKTUALISIEREN UND LOESCHEN 661
21.7.1 AKTUALISIEREN 661
21.7.2 LOESCHEN 661
22 SEQUENZEN 663
22.1 ERSTELLUNG EINER SEQUENZ MIT STANDARDEINSTELLUNGEN 663
22.2 INFORMATIONEN ZU DEN VORHANDENEN SEQUENZEN IN EINER DATENBANK 664
22.3 ABRUFEN VON SEQUENZWERTEN 664
22.3.1 ABRUF EINZELNER SEQUENZWERTE 665
22.3.2 ANFORDERN EINES WERTEBEREICHS 665
22.4 DIE VERWENDUNG DER PARAMETER AS, START,
INCREMENT, MINVALUE,
MAXVALUE, CYCLE UND
CACHE 666
22.4.1 AS, START UND
INCREMENT 666
22.4.2 MAXVALUE 669
22.4.3 CYCLE 670
22.4.4 MINVALUE 670
22.4.5 CACHE 671
23 INDIZES
675
23.1 DER NICHT GRUPPIERTE INDEX AUF EINEM HEAP 676
23.1.1 VORGEHENSWEISE BEIM DURCHLAUFEN EINES INDEX 679
23.2 DER GRUPPIERTE INDEX 680
23.3 DER NICHT GRUPPIERTE INDEX AUF EINEM GRUPPIERTEN INDEX 683
17
INHALT
23.4 DER COLUMNSTORE-INDEX 686
23.5 ERSTELLUNG VON
INDIZES 686
23.5.1 MANUELLE ERSTELLUNG EINES INDEX 686
23.5.2 AUTOMATISCHE ERSTELLUNG VON INDIZES 689
23.6 VERWALTUNG VON INDIZES 690
23.6.1 FRAGMENTIERUNG 690
23.6.2 NEUERSTELLUNG VON INDIZES 693
23.6.3 LOESCHEN EINES
INDEX 694
23.7 STATISTIKEN 694
23.7.1 LOESCHEN EINER STATISTIK 698
23.7.2 AKTUALISIEREN EINER STATISTIK 698
23.7.3 INFORMATIONEN ZU STATISTIKEN ABRUFEN 698
23.8 PLANUNG DES
EINSATZES VON
INDIZES 699
23.8.1 VERWENDEN DES DATENBANKMODUL-OPTIMIERUNGSRATGEBERS 701
23.9 WEITERE OPTIMIERUNGSMOEGLICHKEITEN MIT HILFE VON INDIZES 708
23.9.1 INDIZES MIT EINGESCHLOSSENEN SPALTEN 708
23.9.2 GEFILTERTE INDIZES 713
23.9.3 INDIZIERTE SICHTEN 714
23.9.4 PARTITIONIERTE INDIZES 716
24 COLUMNSTORE-INDIZES
717
24.1 DAS GRUNDPRINZIP VON COLUMNSTORE-INDIZES 717
24.2 ERSTELLUNG EINES
NICHT GRUPPIERTEN COLUMNSTORE-INDEX 719
24.2.1 BEISPIEL FUER DEN LEISTUNGSVERGLEICH EINES REGULAEREN NICHT GRUP
PIERTEN INDEX MIT EINEM NICHT GRUPPIERTEN COLUMNSTORE-INDEX 720
24.2.2 STEUERUNG DER VERWENDUNG NICHT GRUPPIERTER COLUMNSTORE-INDIZES
724
24.3 ERSTELLUNG
EINES GRUPPIERTEN COLUMNSTORE-INDEX 724
24.4 ABFRAGEN VON INFORMATIONEN UEBER VORHANDENE COLUMNSTORE-INDIZES 728
25 TRANSAKTIONEN
729
25.1 EINFUEHRUNG IN TRANSAKTIONEN 729
25.2 ACID 731
25.3 INTERNE TRANSAKTIONSVERARBEITUNG 734
18
INHALT
25.4 VERHALTEN BEI SYSTEMFEHLERN 735
25.5 PROGRAMMIERUNG EXPLIZITER TRANSAKTIONEN 737
25.6 IMPLIZITE TRANSAKTIONEN 741
25.7 SPERREN 743
25.7.1 SPERREBENEN 743
25.7.2 GEMEINSAME SPERREN (SHARED LOCKS) 744
25.7.3 EXKLUSIVE SPERREN
(EXDUSIVE LOCKS) 744
25.8 ISOLATIONSSTUFEN AUF VERBINDUNGSEBENE 745
25.8.1 READ UNCOMMITTED 746
25.8.2 READ COMMITTED 748
25.8.3 REPEATABLE READ 750
25.8.4 SERIAUZABLE 752
25.8.5 SNAPSHOT 753
25.8.6 ZUSAMMENFASSUNG DER EIGENSCHAFTEN VON SPERRSTUFEN 753
25.8.7 SETZEN EINES
TIMEOUT-WERTES 754
25.9 SPERRHINWEISE AUF TABELLENEBENE 755
25.10 INFORMATIONEN ZU SPERREN 757
25.11 DEADLOCKS 757
25.11.1 VERMEIDUNG VON DEADLOCKS 759
25.11.2 BEISPIEL ZUR ERZEUGUNGEINES DEADLOCKS 759
25.11.3 ERFASSUNG VON DEADLOCKS IM PROFILER 760
26 SPEICHEROPTIMIERTE
TABELLEN 763
26.1 GRUNDLAGEN DER SPEICHEROPTIMIERTEN TABELLEN 763
26.1.1 VOR-UND NACHTEILE SPEICHEROPTIMIERTER TABELLEN 764
26.2 BESTAENDIGKEIT SPEICHEROPTIMIERTER TABELLEN 764
26.2.1 SPEICHEROPTIMIERTE TABELLEN MIT NICHT BESTAENDIGEN INHALTEN 765
26.2.2 SPEICHEROPTIMIERTE TABELLEN MIT BESTAENDIGEN INHALTEN 765
26.3 KONFIGURATION EINER DATENBANK ZUR VERWENDUNG SPEICHEROPTIMIERTER
TABELLEN 765
26.3.1 HINZUFUEGEN EINER DATEIGRUPPE ZUR SPEICHERUNG SPEICHER
OPTIMIERTER TABELLEN 766
26.3.2 HINZUFUEGEN EINER DATEI ZUR SPEICHERUNG SPEICHEROPTIMIERTER
TABELLEN 767
26.3.3 FESTLEGUNG DER ISOLATIONSSTUFE FUER SPEICHEROPTIMIERTE TABELLEN
768
19
INHALT
26.4 ERSTELLUNG SPEICHEROPTIMIERTER TABELLEN 769
26.4.1 ERSTELLUNG EINER SPEICHEROPTIMIERTEN TABELLE MIT BESTAENDIGEN
INHALTEN 769
26.4.2 ERSTELLUNG EINER SPEICHEROPTIMIERTEN TABELLE MIT NICHT
BESTAENDIGEN INHALTEN 771
26.5 VERGLEICH DES
VERHALTENS BEIDER ARTEN VON SPEICHEROPTIMIERTEN
TABELLEN 772
27 INDIZIERUNG
SPEICHEROPTIMIERTER TABELLEN
773
27.1 UNTERSCHIEDE ZWISCHEN DER INDIZIERUNG SPEICHEROPTIMIERTER UND
DATEIBASIERTER TABELLEN 773
27.2 INDEXARTEN FUER DIE VERWENDUNG MIT SPEICHEROPTIMIERTEN TABELLEN 774
27.2.1 NICHT GRUPPIERTE INDIZES 774
27.2.2 NICHT GRUPPIERTE HASH-INDIZES 774
27.3 UEBERLEGUNGEN ZUR VERWENDUNG NICHT GRUPPIERTER INDIZES ODER NICHT
GRUPPIERTER HASH-INDIZES 779
27.4 ABFRAGEN ZU INDIZES SPEICHEROPTIMIERTER TABELLEN 779
28 SYSTEMINTERN KOMPILIERTE
GESPEICHERTE
PROZEDUREN 78I
28.1 UEBERBLICK UEBER SYSTEMINTERN KOMPILIERTE GESPEICHERTE PROZEDUREN
UND DEREN VERWENDUNG 781
28.2 ERSTELLUNG
SYSTEMINTERN KOMPILIERTER GESPEICHERTER PROZEDUREN 782
28.2.1 ERSTELLUNG EINER SYSTEMINTERN KOMPILIERTEN GESPEICHERTEN PROZEDUR
FUER DEN LESENDEN ZUGRIFF AUF EINE SPEICHEROPTIMIERTE TABELLE 784
28.2.2 ERSTELLUNG EINER NATIV KOMPILIERTEN PROZEDUR ZUR DEMONSTRATION
DER OPTIONEN ATOMIC UND LANGUAGE 785
28.3 AENDERN EINER SYSTEMINTERN KOMPILIERTEN GESPEICHERTEN PROZEDUR 787
28.4 INFORMATIONEN ZUM SPEICHERORT UND DEN GELADENEN DLL-DATEIEN 787
20
INHALT
TEIL III .NET-PROGRAMMIERUNG
29 SQL SERVER ALS
LAUFZEITUMGEBUNG
FUER .NET
791
29.1 DIE PROGRAMMIERMODELLE IM VERGLEICH 791
29.1.1 T-SQL 791
29.1.2 ERWEITERTE GESPEICHERTE PROZEDUREN 792
29.1.3 EINBINDUNG VON COM-OBJEKTEN 793
29.1.4 EINSATZ VON
MANAGED CODE 793
29.2 DIE CLR-INTEGRATION IM DETAIL 795
29.2.1 CLR-HOSTING 796
29.2.2 THREAD- UND SPEICHERMANAGEMENT 797
29.2.3 I/O-ZUGRIFFE 797
29.2.4 ASSEMBLIES LOADING 797
29.2.5 APPLICATION DOMAIN MANAGEMENT 798
29.3 DER HOSTING-LAYER 799
29.4 VERWALTUNG VON ASSEMBLIES 801
29.5 SICHERHEITSSTUFEN 803
30 .NET-PROGRAMMIERUNG 805
30.1 CLR-UNTERSTUETZUNG AKTIVIEREN 805
30.1.1 CLR-UNTERSTUETZUNG PER SKRIPT AKTIVIEREN 807
30.2 CLR-PROZEDUREN UND FUNKTIONEN 807
30.2.1 CLR VS. T-SQL 807
30.2.2 PROZEDUREN VS.
FUNKTIONEN 807
30.2.3 VEROEFFENTLICHUNG VON METHODEN 808
30.2.4 IMPLEMENTIERUNGSREGELN 809
30.2.5 PARAMETER UND RUECKGABEWERTE 810
30.2.6 SICHERHEITSASPEKTE 812
30.3 GESPEICHERTE PROZEDUREN 812
30.3.1 EINE GESPEICHERTE PROZEDUR MIT VISUAL STUDIO ERSTELLEN 812
30.3.2 DASSQLPROCEDURE-ATTRIBUT 816
30.3.3 PARAMETER UND RUECKGABE 816
30.3.4 TEMPORAERE PROZEDUREN 817
30.3.5 ASSEMBLY BEREITSTELLEN 817
30.3.6 ASSEMBLY OHNE VISUAL STUDIO KOMPILIEREN 818
21
INHALT
30.3.7 INSTALLATION MIT SQLCMD DURCHFUEHREN 819
30.3.8 PROZEDUREN MIT VISUAL STUDIO DEBUGGEN 819
30.4 BENUTZERDEFINIERTE FUNKTIONEN 820
30.4.1 EINSCHRAENKUNGEN 820
30.4.2 DAS SQLFUNCTION-ATTRIBUT 821
30.4.3 FUNKTIONEN BEREITSTELLEN 822
30.4.4 SKALARE FUNKTIONEN 823
30.4.5 EINE SKALARFUNKTION ERSTELLEN 823
30.4.6 TABELLENWERTIGE FUNKTIONEN 824
30.4.7 UNTERSCHIEDE ZWISCHEN T-SQL-UND CLR-FUNKTIONEN 824
30.4.8 EINE TABELLENWERTIGE FUNKTION ERSTELLEN 825
30.5 SERVERSEITIGER DATENZUGRIFF MIT ADO.NET 828
30.5.1 DER KONTEXT 829
30.5.2 VERBINDUNG ZUR DATENBANK HERSTELLEN 830
30.6 PIPES 830
30.6.1 DIE SEND-METHODE 831
30.6.2 DIE EXECUTEANDSEND()-METHODE 833
30.6.3 AUSGABESTROM STEUERN 834
30.7 IMPERSONALISIERUNG 838
30.8 BENUTZERDEFINIERTE TYPEN 842
30.8.1 DAS SQLUSERDEFINEDTYPE-ATTRIBUT 844
30.8.2 EINEN BENUTZERDEFINIERTEN DATENTYP ERSTELLEN 844
30.8.3 DAS INULLABLE-INTERFACE 845
30.8.4 DIETOSTRING()-METHODE 845
30.8.5 DIE PARSE()-METHODE 846
30.8.6 ERSTELLUNG DES CALENDARWEEK-DATENTYPS 846
30.8.7 DEN CALENDARWEEK-TYP INSTALLIEREN 848
30.8.8 DEN CALENDARWEEK-TYP TESTEN 849
30.8.9 VALIDIERUNGEN 850
30.8.10 METHODEN IMPLEMENTIEREN 850
30.8.11 SERIALISIERUNG 853
30.8.12 TYPEN ALS KLASSEN ABBILDEN 857
30.8.13 ZUGRIFF VOM CLIENT 858
30.9 BENUTZERDEFINIERTE AGGREGATE 859
30.9.1 DASSQLUSERDEFINEDAGGREGATE-ATTRIBUT 859
30.9.2 DIE INITQ-METHODE 860
30.9.3 DIE ACCUMULATE()-METHODE 860
30.9.4 DIE MERGE()-METHODE 861
30.9.5 DIETERMINATEQ-METHODE 861
22
INHALT
30.9.6 EIN BEISPIELAGGREGAT 861
30.9.7 DAS MAXRANGE-AGGREGAT IMPLEMENTIEREN 863
30.9.8 HINWEISE ZUR IMPLEMENTIERUNG 866
30.9.9 AGGREGATE INSTALLIEREN 866
30.10 BENUTZERDEFINIERTE TRIGGER 867
30.10.1 DAS SQLTRIGGER-ATTRIBUT 867
30.10.2 DIETRIGGERCONTEXT-KLASSE 868
30.10.3 TRIGGER IMPLEMENTIEREN 869
30.10.4 HINWEISE ZUR IMPLEMENTIERUNG 873
30.10.5 TRIGGER INSTALLIEREN 873
30.11 ADMINISTRATION UND MONITORING VON CLR-OBJEKTEN 874
30.11.1 INFORMATIONEN UEBER DIE INSTALLIERTEN ASSEMBLIES ERMITTELN 874
30.11.2 LAUFZEITINFORMATIONEN VON CLR-OBJEKTEN ERMITTELN 876
31 T-SQL: ERWEITERTE
THEMEN 879
31.1 CROSSAPPLY UND OUTER APPLY 881
31.2 KREUZTABELLEN MIT PIVOT ERSTELLEN 883
31.2.1 ENTSCHEIDUNGSTABELLEN MIT PIVOT ERSTELLEN 887
31.2.2 KREUZTABELLEN IN FLACHE LISTEN TRANSFORMIEREN 889
31.3 COMMON TABLE EXPRESSIONS 891
31.3.1 VERARBEITUNG VON HIERARCHISCHEN DATEN 895
31.3.2 MAXIMALE REKURSIONSSTUFE EINSTELLEN 898
31.4 FEHLERBEHANDLUNG 899
31.4.1 INFORMATIONEN UEBER DEN FEHLER ERMITTELN 900
31.4.2 EIGENE FEHLER AUSLOESEN 904
31.4.3 VERSCHACHTELTE FEHLERBEHANDLUNG 905
31.5 RANKING- UND WINDOWING-FUNKTIONEN 906
31.5.1 ERGEBNISSE MIT RANK() GEWICHTEN 906
31.5.2 RANKING OHNE LUECKEN MIT DENSE_RANK() 907
31.5.3 GRUPPIERTE RANGLISTEN MIT WINDOWING 908
31.5.4 ZEILEN MIT ROW_NUMBER() NUMMERIEREN 909
31.5.5 PAGING MIT ROW_NUMBER() 910
31.5.6 DATEN MIT NTILE() PARTITIONIEREN 912
31.6 DIE OUTPUT-KLAUSEL 913
31.7 DIE TABLESAMPLE-KLAUSEL 915
31.8 EXCEPT- UND INTERSECT-STATEMENT 917
23
INHALT
31.9 TABELLENWERTPARAMETER 919
31.9.1 TABELLENWERTPARAMETER DEFINIEREN 919
31.9.2 TABELLENWERTPARAMETER VERWENDEN 920
31.9.3 PROZEDUREN MIT TABELLENWERTPARAMETERN AUFRUFEN 920
31.9.4 AUFRUFVOMCLIENTMITADO.NET 921
31.9.5 LIMITATIONEN 923
32 EINSATZ VON XML
IN DER DATENBANK
925
32.1 WARUM XML? 926
32.2 HTML UND XML 926
32.2.1 AUSZEICHNUNGSSPRACHEN 927
32.2.2 AUSZEICHNUNGEN 928
32.3 XML-FAEHIGKEITEN VON SQL SERVER 931
32.4 DER XML-DATENTYP 931
32.4.1 VOR-UND NACHTEILE DER XML-DATENSPEICHERUNG 931
32.4.2 XML-FELDER ANLEGEN 933
32.4.3 XML-FELDER MIT EINEM SCHEMA VERKNUEPFEN 935
32.5 AUF GESPEICHERTE XML-DATEN ZUGREIFEN 937
32.5.1 EINE KURZE EINFUEHRUNG IN XPATH 937
32.5.2 XQUERY ALS ABFRAGESPRACHE 940
32.5.3 DIE METHODEN DES XML-DATENTYPS 940
32.5.4 INDIZIERUNG VON XML-FELDERN 946
32.6 DARSTELLUNG VON ABFRAGEERGEBNISSEN IM XML-FORMAT 949
32.6.1 DER RAW-MODUS 951
32.6.2 ALLGEMEINE OPTIONEN DER FOR XML-KLAUSEL 953
32.6.3 DERAUTO-MODUS 956
32.6.4 DER PATH-MODUS 958
32.6.5 DER EXPLICIT-MODUS 960
32.7 XML-SCHEMA ERMITTELN 966
32.8 XML-DATEN IN EINEM RELATIONALEN MODELL SPEICHERN 968
32.8.1 EIN XML-DOKUMENT IN EINE TABELLE IMPORTIEREN 969
24
INHALT
33 DATENBANKZUGRIFF MIT ADO.NET
971
33.1 EINLEITUNG 971
33.1.1 PROJEKTE ANLEGEN UND SPEICHERN 973
33.1.2 DIE BEISPIELDATENBANK 974
33.2 DIE DATENPROVIDER 974
33.3 DIE VERBINDUNG ZU EINER DATENBANK HERSTELLEN 976
33.3.1 DIE VERBINDUNGSZEICHENFOLGE 976
33.3.2 DIE VERBINDUNG MIT EINER BESTIMMTEN SQL-SERVER-INSTANZ
AUFBAUEN 978
33.3.3 OEFFNEN UND SCHLIESSEN EINER VERBINDUNG 982
33.3.4 DAS VERBINDUNGSPOOLING 986
33.3.5 DIE EREIGNISSE
EINES CONNECTION-OBJEKTS 990
33.3.6 VERBINDUNGSZEICHENFOLGEN AUS EINER KONFIGURATIONSDATEI
ABRUFEN 992
33.3.7 DIE KLASSE SQLCONNECTION
IM UEBERBLICK 995
33.3.8 VERBINDUNGEN MIT DEM OLEDB-DATENPROVIDER 997
33.4 DIE DATENBANKABFRAGE 999
33.4.1 DAS SQLCOMMAND-OBJEKT 999
33.4.2 ABFRAGEN, DIE GENAU EIN ERGEBNIS LIEFERN 1005
33.5 DAS SQLDATAREADER-OBJEKT 1005
33.5.1 DATENSAETZE EINLESEN 1006
33.5.2 SCHLIESSEN DES SQLDATAREADER-OBJEKTS 1009
33.5.3 MARS (MULTIPLE ACTIVE RESULTSETS) 1009
33.5.4 BATCH-ABFRAGEN MIT NEXTRESULT DURCHLAUFEN 1011
33.5.5 DAS SCHEMA EINES SQLDATAREADER-OBJEKTS
UNTERSUCHEN 1012
33.6 PARAMETRISIERTE ABFRAGEN 1015
33.6.1 PARAMETRISIERTE ABFRAGEN MIT DEM SQLCLIENT-DATENPROVIDER 1015
33.6.2 DIE KLASSE SQLPARAMETER 1018
33.6.3 ASYNCHRONE ABFRAGEN 1018
33.6.4 GESPEICHERTE PROZEDUREN (STORED PROCEDURES) 1022
33.7 DER SQLDATAADAPTER 1030
33.7.1 WAS IST EIN DATAADAPTER? 1030
33.7.2 DIE KONSTRUKTOREN DER KLASSE DATAADAPTER 1032
33.7.3 DIE EIGENSCHAFT SELECTCOMMAND 1033
33.7.4 DEN LOKALEN DATENSPEICHER MIT FILL FUELLEN 1034
33.7.5 TABELLENZUORDNUNG MIT TABLEMAPPINGS 1038
33.7.6 DAS EREIGNIS FILLERROR
DES SQLDATAADAPTERS 1043
25
INHALT
33.8 DATEN IM LOKALEN SPEICHER
- DAS DATASET 1044
33.8.1 VERWENDEN DES DATASET-OBJEKTS 1045
33.8.2 DATENINFORMATIONEN IN EINE XML-DATEI SCHREIBEN 1049
33.8.3 DEM DATASET SCHEMAINFORMATIONEN UEBERGEBEN 1050
33.8.4 SCHEMAINFORMATIONEN BEREITSTELLEN 1052
33.8.5 EIGENSCHAFTEN EINER DATACOLUMN, DIE DER GUELTIGKEITSPRUEFUNG
DIENEN 1052
33.8.6 DIE CONSTRAINTS-KLASSEN EINER DATATABLE 1053
33.8.7 DAS SCHEMA MIT PROGRAMMCODE ERZEUGEN 1054
33.8.8 SCHEMAINFORMATIONEN MIT SQLDATAADAPTER ABRUFEN 1056
33.8.9 AENDERUNGEN IN EINER DATATABLE VORNEHMEN 1060
33.8.10 WAS BEI
EINER AENDERUNG EINER DATENZEILE PASSIERT 1065
33.8.11 MANUELLES STEUERN DER EIGENSCHAFT DATAROWSTATE 1069
33.9 MIT MEHREREN TABELLEN ARBEITEN 1070
33.9.1 DER WEG UEBER JOIN-ABFRAGEN 1071
33.9.2 MEHRERE TABELLEN IN EINEM DATASET 1072
33.9.3 EINE DATARELATION ERZEUGEN 1073
33.9.4 DATARELATIONS UND EINSCHRAENKUNGEN 1074
33.9.5 IN BEZIEHUNG STEHENDE DATEN SUCHEN 1076
33.9.6 ERGAENZUNG ZUM SPEICHERN VON SCHEMAINFORMATIONEN IN EINER
XML-SCHEMADATEI 1079
33.10 AKTUALISIEREN DER DATENBANK 1079
33.10.1 AKTUALISIEREN MIT DEM COMMANDBUILDER-OBJEKT 1079
33.10.2 MANUELL GESTEUERTE AKTUALISIERUNGEN 1082
33.10.3 AKTUALISIEREN MIT EXECUTENONQUERY 1084
33.10.4 MANUELLES AKTUALISIEREN MIT DEM DATAADAPTER 1092
33.10.5 DEN ZU AKTUALISIERENDEN DATENSATZ IN DER DATENBANK SUCHEN 1096
33.10.6 DEN BENUTZER UEBER FEHLGESCHLAGENE AKTUALISIERUNGEN
INFORMIEREN. 1101
33.10.7 KONFLIKTVERURSACHENDE DATENZEILEN BEI DER DATENBANK ABFRAGEN
1104
34 UNQ
1111
34.1 WAS IST
UNQ? 1111
34.1.1 VERZOEGERTE AUSFUEHRUNG 1113
34.1.2 LINQ-ERWEITERUNGSMETHODEN AN EINEM BEISPIEL 1113
34.2 UNQ TO OBJECTS 1117
34.2.1 MUSTERDATEN 1117
34.2.2 DIE ALLGEMEINE LINQ-SYNTAX 1119
26
INHALT
34.3 DIE ABFRAGEOPERATOREN 1121
34.3.1 UEBERSICHT DER ABFRAGEOPERATOREN 1121
34.3.2 DIE FROM-KLAUSEL 1122
34.3.3 MIT WHERE FILTERN 1124
34.3.4 DIE PROJEKTIONSOPERATOREN 1126
34.3.5 DIE SORTIEROPERATOREN 1127
34.3.6 GRUPPIEREN MIT GROUPBY 1129
34.3.7 VERKNUEPFUNGEN MIT JOIN 1131
34.3.8 DIE SET-OPERATOREN-FAMILIE 1134
34.3.9 DIE FAMILIE DER AGGREGATOPERATOREN 1136
34.3.10 QUANTIFIZIERUNGSOPERATOREN 1139
34.3.11 AUFTEILUNGSOPERATOREN 1140
34.3.12 DIE ELEMENTOPERATOREN 1142
34.3.13 DIE KONVERTIERUNGSOPERATOREN 1146
35 EINFUEHRUNG
IN DAS
ADO.NET ENTITY
FRAMEWORK 1147
35.1 KRITISCHEBETRACHTUNGVONADO.NET 1148
35.1.1 DIE ORGANISATION DER DATEN IN KLASSEN 1149
35.2 EIN ERSTES ENTITY
DATA MODEL (EDM) ERSTELLEN 1150
35.3 DAS ENTITY DATA MODEL IM DESIGNER 1155
35.3.1 DIE UEBERGEORDNETEN EIGENSCHAFTEN EINER ENTITAET 1155
35.3.2 EIGENSCHAFTSTYPEN EINES ENTITAETSOBJEKTS 1156
35.3.3 ASSOZIATIONEN IM ENTITY DATA MODEL 1159
35.3.4 DER KONTEXT DER ENTITAETEN 1160
35.4 DER AUFBAU DES ENTITY DATA MODELS 1161
35.5 DIE KLASSEN
DES ENTITY DATA MODELS (EDM) 1165
35.5.1 DIE KLASSEN FUER DIE DBCONTEXT-API 1165
35.5.2 DIE ENTITAETEN FUER.NET-FRAMEWORK-4-OBJECTCONTEXT 1166
35.5.3 DER OBJECTCONTEXT 1171
35.6 DIE ARCHITEKTUR DES ENTITY FRAMEWORKS 1173
35.6.1 OBJECT SERVICES 1173
35.6.2 DIE SCHICHTEN DES
ENTITY FRAMEWORKS 1173
27
INHALT
36 ABFRAGEN MIT .NET 4 FRAMEWORK-OBJECTCONTEXT
1175
B6.1 ABFRAGEN MIT LINQTO ENTITIES 1176
36.1.1 EINFACHE ABFRAGEN 1176
36.1.2 NAVIGIEREN IN ABFRAGEN 1183
36.1.3 AGGREGATMETHODEN 1188
36.1.4 JOINS IN UNQDEFINIEREN 1190
36.1.5 IN BEZIEHUNG STEHENDE DATEN LADEN 1194
36.2 ABFRAGEN MIT ENTITY SQL 1199
36.2.1 EIN ERSTES BEISPIEL
MIT ENTITY SQL 1200
36.2.2 DIE FUNDAMENTALEN REGELN DER ENTITY-SQL-SYNTAX 1201
36.2.3 FILTERN MIT ENTITY SQL 1202
36.2.4 PARAMETRISIERTE ABFRAGEN 1204
36.3 DER ENTITYCLIENT-PROVIDER 1205
36.3.1 VERBINDUNGEN MIT ENTITYCONNECTION 1206
36.3.2 DIE KLASSE ENTITYCOMMAND 1207
36.4 ABFRAGE-GENERATOR-METHODEN (QUERYBUILDER-METHODEN) 1208
36.5 SQL-DIREKTABFRAGEN 1209
37 ENTITAETSAKTUALISIERUNG
UND ZUSTANDSVERWALTUNG 1211
37.1 AKTUALISIEREN VON ENTITAETEN 1211
37.1.1 ENTITAETEN AENDERN 1211
37.1.2 HINZUFUEGEN NEUER ENTITAETEN 1213
37.1.3 LOESCHEN EINER ENTITAET 1218
37.2 DER LEBENSZYKLUS EINER
ENTITAET IM OBJEKTKONTEXT 1220
37.2.1 DER ZUSTAND EINER ENTITAET 1221
37.2.2 DAS TEAM
DER OBJEKTE IM UEBERBLICK 1221
37.2.3 NEUE ENTITAETEN IM OBJEKTKONTEXT 1222
37.2.4 DIE ZUSTAENDE EINER ENTITAET 1224
37.2.5 ZUSAETZLICHE ENTITAETEN IN DEN DATENCACHE LADEN 1226
37.2.6 DIE ZUSTANDSVERFOLGUNG MIT MERGEOPTION STEUERN 1226
37.3 DAS 0BJECTSTATEENTRY-0BJEKT 1229
37.3.1 DIE CURRENT-UND ORIGINALWERTE ABRUFEN 1231
37.3.2 DIE METHODE TRYCETOBJECTSTATEENTRY 1232
28
INHALT
37.3.3 GEAENDERTE ENTITAETEN MIT GETOBJECTSTATEENTRIES ABRUFEN 1233
37.3.4 DIE METHODE GETMODIFIEDPROPERTIES 1234
37.4 DIE KLASSE ENTITYKEY 1235
37.4.1 DIE METHODEN GETOBJECTBYKEY UND TRYGETOBJECTBYKEY 1235
37.5 KOMPLEXERE SZENARIEN 1236
37.5.1 DIE METHODE CHANGESTATE 1237
37.5.2 DIE METHODEN APPLYCURRENTCHANGES UND
APPLYORIGINALCHANGES 1238
38 KONFLIKTE BEHANDELN
1241
38.1 ALLGEMEINE BETRACHTUNGEN 1241
38.1.1 DAS PESSIMISTISCHE SPERREN 1242
38.1.2 DAS OPTIMISTISCHE SPERREN 1242
38.2 KONKURRIERENDE ZUGRIFFE MIT DEM ENTITY FRAMEWORK 1243
38.2.1 DAS STANDARDVERHALTEN DES ENTITY FRAMEWORKS 1243
38.2.2 DAS AKTUALISIERUNGSVERHALTEN MIT FIXED BEEINFLUSSEN 1244
38.2.3 AUF DIE AUSNAHME OPTIMISTICCONCURRENCYEXCEPTION REAGIEREN 1246
38.2.4 DAS CLIENTWINS-SZENARIO 1247
38.2.5 DAS STOREWINS-SZENARIO 1250
39 DIE DBCONTEXT-API
1251
39.1 DATENABFRAGEN MIT DBCONTEXT 1251
39.1.1 EINE ENTITAET MIT DBSETO.FIND SUCHEN 1253
39.1.2 LOKALE DATEN MIT LOAD UND LOCAL 1254
39.1.3 IN BEZIEHUNG STEHENDE DATEN LADEN 1256
39.2 AENDERN VON ENTITAETEN 1261
39.2.1 ENTITAETEN AENDERN 1261
39.2.2 HINZUFUEGEN EINER NEUEN ENTITAET 1262
39.2.3 LOESCHEN EINER ENTITAET 1263
39.3 CHANGETRACKING (AENDERUNGSNACHVERFOLGUNG) 1266
39.3.1 SNAPSHOT CHANGETRACKING 1267
39.3.2 CHANGETRACKING PROXIES 1270
29
INHALT
39.4 KONTEXTLOSE ENTITAETEN AENDERN 1273
39.4.1 ENTITAETSZUSTAENDE 1274
39.4.2 DBCONTEXT EINE NEUE ENTITAET HINZUFUEGEN 1274
39.4.3 DBCONTEXT EINE GEAENDERTE ENTITAET HINZUFUEGEN 1276
39.4.4 DBCONTEXT EINE ZU LOESCHENDE ENTITAET ANGEBEN 1277
INDEX 1279
30 |
any_adam_object | 1 |
author | Mertins, Dirk Neumann, Jörg Kühnel, Andreas |
author_GND | (DE-588)131807706 (DE-588)1028663412 |
author_facet | Mertins, Dirk Neumann, Jörg Kühnel, Andreas |
author_role | aut aut aut |
author_sort | Mertins, Dirk |
author_variant | d m dm j n jn a k ak |
building | Verbundindex |
bvnumber | BV042219448 |
classification_rvk | ST 271 |
ctrlnum | (OCoLC)887891085 (DE-599)DNB1054672059 |
dewey-full | 005.7565 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.7565 |
dewey-search | 005.7565 |
dewey-sort | 15.7565 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 6., aktualisierte Aufl. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a22000008c 4500</leader><controlfield tag="001">BV042219448</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20150120</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">141202s2015 gw ad|| |||| 00||| ger d</controlfield><datafield tag="015" ind1=" " ind2=" "><subfield code="a">14,N33</subfield><subfield code="2">dnb</subfield></datafield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">1054672059</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783836230445</subfield><subfield code="c">Gb. : EUR 69.90 (DE), EUR 71.90 (AT), sfr 91.90 (freier Pr.)</subfield><subfield code="9">978-3-8362-3044-5</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">3836230445</subfield><subfield code="9">3-8362-3044-5</subfield></datafield><datafield tag="024" ind1="3" ind2=" "><subfield code="a">9783836230445</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)887891085</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)DNB1054672059</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-NW</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-523</subfield><subfield code="a">DE-859</subfield><subfield code="a">DE-29T</subfield><subfield code="a">DE-11</subfield><subfield code="a">DE-573</subfield><subfield code="a">DE-M347</subfield><subfield code="a">DE-1102</subfield><subfield code="a">DE-20</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.7565</subfield><subfield code="2">22/ger</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 271</subfield><subfield code="0">(DE-625)143639:</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="100" ind1="1" ind2=" "><subfield code="a">Mertins, Dirk</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)131807706</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">SQL Server 2014</subfield><subfield code="b">das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server]</subfield><subfield code="c">Dirk Mertins ; Jörg Neumann ; Andreas Kühnel</subfield></datafield><datafield tag="246" ind1="1" ind2="3"><subfield code="a">Microsoft SQL Server 2014</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">6., aktualisierte Aufl.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Bonn</subfield><subfield code="b">Galileo Press</subfield><subfield code="c">2015</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">1308 S.</subfield><subfield code="b">Ill., graph. Darst.</subfield><subfield code="c">240 mm x 168 mm</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">Galileo Computing</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Bis 2. Aufl. u.d.T.: Mertins, Dirk: Das Programmierhandbuch SQL Server</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">ADO.NET Entity Framework</subfield><subfield code="0">(DE-588)7732216-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">LINQ</subfield><subfield code="0">(DE-588)7582603-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">ADO.NET</subfield><subfield code="0">(DE-588)4678430-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">SQL Server 2014</subfield><subfield code="0">(DE-588)1059928450</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Transact SQL</subfield><subfield code="0">(DE-588)4298853-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">SQL Server 2014</subfield><subfield code="0">(DE-588)1059928450</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="1" ind2="0"><subfield code="a">SQL Server 2014</subfield><subfield code="0">(DE-588)1059928450</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">Transact SQL</subfield><subfield code="0">(DE-588)4298853-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="2"><subfield code="a">ADO.NET</subfield><subfield code="0">(DE-588)4678430-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="3"><subfield code="a">LINQ</subfield><subfield code="0">(DE-588)7582603-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="4"><subfield code="a">ADO.NET Entity Framework</subfield><subfield code="0">(DE-588)7732216-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Neumann, Jörg</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Kühnel, Andreas</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)1028663412</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">X:MVB</subfield><subfield code="q">text/html</subfield><subfield code="u">http://deposit.dnb.de/cgi-bin/dokserv?id=4739861&prov=M&dok_var=1&dok_ext=htm</subfield><subfield code="3">Inhaltstext</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">DNB 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=027657983&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-027657983</subfield></datafield></record></collection> |
id | DE-604.BV042219448 |
illustrated | Illustrated |
indexdate | 2024-09-10T01:30:59Z |
institution | BVB |
isbn | 9783836230445 3836230445 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-027657983 |
oclc_num | 887891085 |
open_access_boolean | |
owner | DE-523 DE-859 DE-29T DE-11 DE-573 DE-M347 DE-1102 DE-20 |
owner_facet | DE-523 DE-859 DE-29T DE-11 DE-573 DE-M347 DE-1102 DE-20 |
physical | 1308 S. Ill., graph. Darst. 240 mm x 168 mm |
publishDate | 2015 |
publishDateSearch | 2015 |
publishDateSort | 2015 |
publisher | Galileo Press |
record_format | marc |
series2 | Galileo Computing |
spelling | Mertins, Dirk Verfasser (DE-588)131807706 aut SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] Dirk Mertins ; Jörg Neumann ; Andreas Kühnel Microsoft SQL Server 2014 6., aktualisierte Aufl. Bonn Galileo Press 2015 1308 S. Ill., graph. Darst. 240 mm x 168 mm txt rdacontent n rdamedia nc rdacarrier Galileo Computing Bis 2. Aufl. u.d.T.: Mertins, Dirk: Das Programmierhandbuch SQL Server ADO.NET Entity Framework (DE-588)7732216-2 gnd rswk-swf LINQ (DE-588)7582603-3 gnd rswk-swf ADO.NET (DE-588)4678430-5 gnd rswk-swf SQL Server 2014 (DE-588)1059928450 gnd rswk-swf Transact SQL (DE-588)4298853-6 gnd rswk-swf SQL Server 2014 (DE-588)1059928450 s DE-604 Transact SQL (DE-588)4298853-6 s ADO.NET (DE-588)4678430-5 s LINQ (DE-588)7582603-3 s ADO.NET Entity Framework (DE-588)7732216-2 s Neumann, Jörg Verfasser aut Kühnel, Andreas Verfasser (DE-588)1028663412 aut X:MVB text/html http://deposit.dnb.de/cgi-bin/dokserv?id=4739861&prov=M&dok_var=1&dok_ext=htm Inhaltstext DNB Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=027657983&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Mertins, Dirk Neumann, Jörg Kühnel, Andreas SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] ADO.NET Entity Framework (DE-588)7732216-2 gnd LINQ (DE-588)7582603-3 gnd ADO.NET (DE-588)4678430-5 gnd SQL Server 2014 (DE-588)1059928450 gnd Transact SQL (DE-588)4298853-6 gnd |
subject_GND | (DE-588)7732216-2 (DE-588)7582603-3 (DE-588)4678430-5 (DE-588)1059928450 (DE-588)4298853-6 |
title | SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] |
title_alt | Microsoft SQL Server 2014 |
title_auth | SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] |
title_exact_search | SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] |
title_full | SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] Dirk Mertins ; Jörg Neumann ; Andreas Kühnel |
title_fullStr | SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] Dirk Mertins ; Jörg Neumann ; Andreas Kühnel |
title_full_unstemmed | SQL Server 2014 das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] Dirk Mertins ; Jörg Neumann ; Andreas Kühnel |
title_short | SQL Server 2014 |
title_sort | sql server 2014 das programmierhandbuch inkl migration von sql server 2012 installation migration datenbankmodellierung t sql net programmierung xml und webservices einsatz als programmierplattform und datenbankmanagement server |
title_sub | das Programmierhandbuch ; [inkl. Migration von SQL Server 2012 ; Installation, Migration, Datenbankmodellierung ; T-SQL, .NET-Programmierung, XML und Webservices ; Einsatz als Programmierplattform und Datenbankmanagement-Server] |
topic | ADO.NET Entity Framework (DE-588)7732216-2 gnd LINQ (DE-588)7582603-3 gnd ADO.NET (DE-588)4678430-5 gnd SQL Server 2014 (DE-588)1059928450 gnd Transact SQL (DE-588)4298853-6 gnd |
topic_facet | ADO.NET Entity Framework LINQ ADO.NET SQL Server 2014 Transact SQL |
url | http://deposit.dnb.de/cgi-bin/dokserv?id=4739861&prov=M&dok_var=1&dok_ext=htm http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=027657983&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT mertinsdirk sqlserver2014dasprogrammierhandbuchinklmigrationvonsqlserver2012installationmigrationdatenbankmodellierungtsqlnetprogrammierungxmlundwebserviceseinsatzalsprogrammierplattformunddatenbankmanagementserver AT neumannjorg sqlserver2014dasprogrammierhandbuchinklmigrationvonsqlserver2012installationmigrationdatenbankmodellierungtsqlnetprogrammierungxmlundwebserviceseinsatzalsprogrammierplattformunddatenbankmanagementserver AT kuhnelandreas sqlserver2014dasprogrammierhandbuchinklmigrationvonsqlserver2012installationmigrationdatenbankmodellierungtsqlnetprogrammierungxmlundwebserviceseinsatzalsprogrammierplattformunddatenbankmanagementserver AT mertinsdirk microsoftsqlserver2014 AT neumannjorg microsoftsqlserver2014 AT kuhnelandreas microsoftsqlserver2014 |