Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland...
-
Upload
ottila-stiehl -
Category
Documents
-
view
106 -
download
1
Transcript of Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland...
![Page 1: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/1.jpg)
SQL Server 2008{ Was ist neu für Entwickler? }Jens K. Süßmeier, Daniel Walzenbach
DB Consultant, Developer EvangelistMicrosoft Deutschland GmbH
![Page 2: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/2.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 3: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/3.jpg)
Unstrukturierte DatenFileStream
VARBINARY(MAX)Unstrukturierte Daten werden direkt in NTFS Dateisystem gespeichertZwei Programmiermodelle
T-SQL (genau wie SQL BLOB)Win32 Streaming APIs mit T-SQL transaktionaler Semantik
Transaktionales VerhaltenBessere Handbarkeit
Backup/restoreSQL Server Sicherheit
Dateigröße nur durch das Dateisystem limitiert
BLOBs in DB + Datei-system
speichern
Anwendung
BLOB
DB
![Page 4: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/4.jpg)
{ Unstrukturierte Daten }
demoDer FileStream Datentyp
![Page 5: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/5.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 6: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/6.jpg)
Neue Zeiten sind angebrochen
DateTimeOffset(n)
DateTime2(n)
Date
Time(n)
![Page 7: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/7.jpg)
Neue Zeiten sind angebrochen Date
Enthält nur den DatumswertFeste Größe von 3 byteSpanne: 01.01.0001 – 31.12.9999Bsp: 31-08-2007, 2007-08-31
![Page 8: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/8.jpg)
Neue Zeiten sind angebrochen Time(n)
Enthält nur den ZeitwertVariable Größe von 3-5 byte (je nach konfigurierter Genauigkeit)Genauigkeit bis zu 100 Nanosekunden möglich)Bsp: 08:17:36.22332
![Page 9: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/9.jpg)
Neue Zeiten sind angebrochen DateTimeOffset(n)
Datum und Uhrzeit inklusive der ZeitzonenverschiebungVariable Größe von 8-10 byte (je nach konfigurierter Genauigkeit, bis zu 100 Nanosekunden möglich)Bsp: 2007-08-31 08:17:36.22332 01:00
![Page 10: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/10.jpg)
Neue Zeiten sind angebrochen DateTime2(n)
Kombination aus dem neuen Date und Time Datentyp mit erweiterter Spanne und PräzisionVariable Größe von 6-8 byte (je nach gewünschter Genauigkeit)Genauigkeit bis zu 100 Nanosekunden möglich)Spanne von 01.01.0001 – 31.12.9999Bsp: 31-08-2007 08:17:36.22332
![Page 11: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/11.jpg)
Neue Zeiten sind angebrochen Visual Studio 2008
Erweiterung des SqlDbType Enum und der Clientbibliotheken
SQL Server Type .NET Typedate System.DateTime time System.TimeSpan datetimeoffset System.DateTimeOffs
et datetime2 System.DateTime
![Page 12: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/12.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 13: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/13.jpg)
T-SQL VerbesserungenHierarchyID Datentyp
Perfekter Einsatz für Unternehmensorganisation, Stücklisten, etc…
Repräsentiert eine Position in einer HierarchieKompakte/effiziente SpeicherungBeliebige Datensätze speichern/löschenLeistungsfähige Abfragen
GetRoot, GetLevel, IsDescendant, ReParent, etc.
![Page 14: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/14.jpg)
Hierarchische Daten in SQL 2005
Parent ID <- ChildIDEinfach Daten einzupflegen aber…Aufwändig in der Abfrage
Rekursion
![Page 15: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/15.jpg)
Hierarchische Daten in SQL 2008
Neuer „Built-In“ Datentyp – HierarchyIDSQLCLR basierte System UDT
Kann auch in .NET (VB.NET, C#) verwendet werden (SqlHierarchyId)
Als path enumeration model implementiert (ORDPATH)HierarchyID (SQLCLR Typ) kann erweitert werden
Von dem Typ ableitenUm Methoden und Properties erweitern
![Page 16: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/16.jpg)
HierarchyID erweitern
Da HierarchyID ein SQLCLR Typ istKann von dem Typ abgeleitet werdenErweitern um Methoden und Properties
![Page 17: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/17.jpg)
HierarchyID IndexstrategienDepth-first
Knoten in einem Unterbaum sind benachbart angeordnet
Effizient für Fragen nach Unterbäumen„Suche nach allen Dateien in diesem und den untergeordneten Ordnern“
CREATE UNIQUE INDEX Org_Depth_First ON Organization(EmployeeID)
![Page 18: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/18.jpg)
HierarchyID Indexstrategien Breadth-first
Knoten in einer Ebene sind benachbart angeordnet
Effizient für Fragen nach direkt unterstellten Knoten„Suche nach allen Angestellten eines Managers“
CREATE CLUSTERED INDEX Org_Breadth_First ON Organization(OrgLevel,EmployeeID)
![Page 19: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/19.jpg)
{ Hierarchische Daten }
demo Hierarchische Struktur
anlegen verwalten
![Page 20: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/20.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 21: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/21.jpg)
Merge statementAusgangslage
Für einen Abgleich müssen drei separate statements erzeugt werden (INSERT/UPDATE/DELETE) und nacheinander ausgeführt werdenEine explizite Transaktion muss über alle DML Operationen separat gepflegt werden um bei Fehlern das Rollback zu ermöglichen
![Page 22: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/22.jpg)
Merge statementAnwendungsgebiete
Bietet die Möglichkeit für die gleichzeitige Verwendung von DML Operationen (INSERT / UPDATE / DELETE) in einer AnweisungBietet die Möglichkeit Änderungen in einem Batch durch den Client übertragen zu lassen und die Logik serverseitig auszuführenBefüllungen eines DataWareHouseBatchUpdate von ClientsSynchronisieren von Datenquellen
![Page 23: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/23.jpg)
Merge statement Syntax
[ WITH <common_table_expression> [,...n] ]MERGE [ TOP ( expression ) [ PERCENT ] ] [ INTO ] target_table [ [ AS ] table_alias ] [ WITH ( <merge_hint> ) ]USING <table_source>(… 58 lines of syntax following…)
![Page 24: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/24.jpg)
Merge statement Aktionen
WHEN MATCHED (INNER JOIN)Ermöglicht Operationen wenn Datensätze sowohl in der Quelle als auch im Ziel vorhanden sind
WHEN [TARGET] NOT MATCHED (LEFT OUTER JOIN)
Ermöglicht Operationen wenn Datensätze in der Quelle aber nicht im Ziel existieren
![Page 25: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/25.jpg)
Merge statement Aktionen
WHEN SOURCE NOT MATCHED (RIGHT OUTER JOIN)
Ermöglicht Operationen wenn Datensätze im Ziel aber nicht in der Quelle existieren
![Page 26: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/26.jpg)
Merge statement Vorteile
MERGE ist transaktional und benötigt keine explizite Transaktion für die beinhaltetenden DML OperationenMERGE löst Trigger nur einmal pro Aktion aus (BTW: Triggers are fired per statement NOT per row! )$action ermöglicht es die ausgeführte Aktion (INSERT / UPDATE / DELETE) des Datensatzes zu erkennen
![Page 27: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/27.jpg)
Merge statement Vorteile
UPDATE Nicht-deterministisch: Mehrere gefundene (durch ON clause) Datensätze in der Quelltabelle
MERGE Deterministisch: Join (ON clause) erwartet einen eindeutigen Datensatz in der Quelle
![Page 28: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/28.jpg)
{ Merge }
demoDie Verwendung von Merge Statements
![Page 29: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/29.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 30: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/30.jpg)
Integrierte Volltextsuche
Komplett neue Volltextsuche Architektur
Volltextsuche als Feature der DatenbankVolltextkataloge sind in DB inregriertUmfassend Konfiguration von „Noise Words“
„Noise Word“ Konfiguration bleibt bei Backup/Restore und Detach/Attach intakt
Suchergebnisse visualisierenVerbesserte SuchergebnisseQuery und Indexing Performance deutlich gesteigert
![Page 31: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/31.jpg)
{ Integrierte Volltextsuche }
demo Volltext Index anlegen, abfragen, mit SQL Serve 2005 vergleichen
![Page 32: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/32.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 33: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/33.jpg)
Table-valued parameterAusgangslage
Batch Updates benötigten bisher mehrere Roundtrips zum Server um einen Abgleich zu machenSenden von strukturierten Daten war bisher nicht möglich, außer diese auf dem Server wieder zu zerlegen (TextArrays, XML, Binärdaten)Untypisierte Daten führten oftmals zu serverseitigen Fehlern
![Page 34: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/34.jpg)
Table-valued parameterAusgangslage
Grundlage sind benutzerdefinierte Tabellentypen
Erweiterung der benutzterdefinierten Typen, der Typ wird in sys.table_types persistiertErweiterung der bestehenden “Create Type” Syntax
CREATE TYPE myTableType AS TABLE (id INT, name NVARCHAR(100),qty INT);
DECLARE @MyVar myTableType
![Page 35: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/35.jpg)
Table-valued parameterAnwendung
Table-valued parameters
Verwendung von benutzerdefinierte Tabellentypen für die temporäre Speicherung von und den lesenden Zugriff auf die Daten (READONLY)Vereint Vorteile von Tabellenvariablen und temporären Tabellen
![Page 36: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/36.jpg)
Table-valued parameterAnwendung
Ermöglicht die Übergabe als SqlParameter von Instanzen der Typen
DataTableDbDataReaderSystem.Collections.Generic.IList<SqlDataRecord>
Unterstützung der client stacks OLEDB/ODBC/ADO.NET Erweiterung der .NET (3.x) Client durch den neuen SqlDbType „Structured“
![Page 37: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/37.jpg)
Table-valued parameterVorteile
Ermöglicht große Mengen an Daten vom Client an den Server effizient (zur weiteren Verarbeitung) zu übertragenBietet die Möglichkeit Parameter / Datensätze an Routinen in einer Variable zu übergeben (vs. XML, BLOB, CSV und andere Möglichkeiten die zusätzliche Verarbeitungen benötigen) Verringert bei großen Datenmengen die Anzahl der erzeugten Roundtrips erheblich
![Page 38: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/38.jpg)
{ Table-valued parameters}
demoMit Table-valued parameters arbeiten
![Page 39: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/39.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 40: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/40.jpg)
Geodaten
Geodaten sind vielfältig einsetzbarPlanare (ebene Welt) und geodätische (runde Welt) AlgorithmenVisualisierung von Geodaten mit dem Virtual Earth SDKAustausch von Geodaten über GML XMLIntegration von Geodaten in .NET AnwendungenVerbesserte Performance durch „Spatial Indexes“
47.6456,-122.12551
![Page 41: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/41.jpg)
Geodaten Geography Datentyp
Geodätisches Modell („Runde Erde“)Beschreibt Punkte, Linien und Gebiete durch Längen- und BreitengradeBerechnet Erdkrümmung und berücksichtigt korrekte „Großkreis“-Entfernungen
![Page 42: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/42.jpg)
Geodaten Geometry Datentyp
Ebenes Modell („Flache Erde“)Beschreibt Punkte, Linien und Gebiete durch X/Y KoordinatenEinsetzbar für kleine Gebiete und nichtprojezierte Oberflächen wie Innenräume, etc.
![Page 43: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/43.jpg)
Geodaten Methoden des Geometry Datentyps
OGC Methoden (43)Erweiterte Methoden (10)OGC Statische Methoden (16)Erweiterte Statische Methoden (4)
![Page 44: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/44.jpg)
{ JobScout24 }
Sven SchneiderTeamleiter SoftwareentwicklungJobScout24
Partner
![Page 45: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/45.jpg)
{ Geodaten }
demo Übersicht Geodaten Mit Geodaten arbeiten
![Page 46: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/46.jpg)
Überblick
Mit unstrukturierten Daten arbeitenNeue Zeiten sind angebrochenHierarchische DatenMERGEIntegrierte VolltextsucheTable Value parameters, Table row constructorGeodatenGoodies
![Page 47: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/47.jpg)
Die kleinen Dinge im Leben…
C# Unterstüzung für SSIS-Tasks
Large UDTsDie Größe von 8k wurde gebrochen, neue mögliche Größe der UDTs ist 2GB
Intellisense in SQL Server Management Studio
![Page 48: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/48.jpg)
Die Kleinen Dinge im Leben…
Row constructors
SELECT * FROM (VALUES
(10002,1,12,1,12), (10002,1,12,1,12), (10003,1,12,1,12)
) AS SomeOrders(OrderId, ProductId, UnitPrice, Quantity, Discount)
![Page 49: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/49.jpg)
Die kleinen Dinge im Leben…
Row constructors
Insert Into [Order Details]VALUES (10001,1,12,1,12) , (10002,1,12,1,12) , (10003,1,12,1,12)
![Page 50: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/50.jpg)
Die kleinen Dinge im Leben…
INSERT over DMLErweiterung zu OUPUT INTO AnweisungErmöglicht die Speicherung und Verarbeitung der DML relevanten Informationen (INSERTED /DELETED / $Actions)
Update [Order Details]SET Discount = 0 WHERE Price < 10
Update [Order Details]SET Discount = 0OUTPUT DELETED.OrderId, DELETED.PosIdINTO OrdersThatChangedWHERE Price < 10
INSERT INTO OrdersThatChanged(OrderId,PosId)SELECT OrderId,PosId FROM(
Update [Order Details]SET Discount = 0OUTPUT DELETED.OrderId, DELETED.PosIdWHERE Price < 10
) ChangedOrders (OrderId, PosId)WHERE ProductId > 1000
![Page 51: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/51.jpg)
Die kleinen Dinge im Leben…
Zuweisungsoperatoren+=, -=, *=, /=, &=,|=,%=,^=
UPDATE [Order Details]SET Discount *= 1.1FROM [Order Details] ODINNER JOIN Orders ODON O.OrderId = OD.OrderIdWHERE OrderId = 10001
Variableninititalisierungen
DECLARE @MyInt INT = 0
![Page 52: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/52.jpg)
Die kleinen Dinge im Leben…
Variableninititalisierungen
Zuweisungsoperatoren+=, -=, *=, /=, &=,|=,%=,^=
UPDATE [Order Details]SET Discount *= 1.1FROM [Order Details] ODINNER JOIN Orders ODON O.OrderId = OD.OrderIdWHERE OrderId = 10001
DECLARE @MyInt INT = 0
![Page 53: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/53.jpg)
Die kleinen Dinge im Leben…
Intellisense :-)
![Page 54: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/54.jpg)
Zusammanfassung
SQL Server 2008 ermöglicht ein effektiveres Arbeiten mit Daten
Geo- und unstrukturierte DatenT-SQL VerbesserungenNeue DatentypenSynchronisierungen von DatenADO.NET Entity Framework…
![Page 55: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/55.jpg)
Resources
Learn more about data programmabilityhttp://www.microsoft.com/sql/2008/technologies/dataprogrammability.mspx
Learn more about spatial datahttp://www.microsoft.com/sql/2008/technologies/spatial.mspx
Learn more about SQL Server 2008http://www.microsoft.com/sql/2008/default.mspx
Discover SQL Server 2008: Webcasts, Virtual Labs, and White Papershttp://www.microsoft.com/sql/2008/learning/default.mspx
SQL Server 2008 traininghttp://www.microsoft.com/learning/sql/2008/default.mspx
Download latest SQL Server CTPhttp://www.microsoft.com/sql/2008/prodinfo/download.mspx
Join the SQL PASS communityhttp://www.sqlpass.org
![Page 56: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/56.jpg)
Visual Studio 2008weitere Angebote
Visual Studio Team System Information DayRegelmäßige ganztägige Informationsveranstaltung von MicrosoftPraxisnahe Demos & viel Raum für DiskussionenDetails & Anmeldung: www.event-team.com/events/visualstudio
TeamConf 2008 – Die Visual Studio Team System KonferenzVSTS in der Praxis - 22.-24. April 2008 in MünchenAnwenderberichte (Siemens, ABB, Commerzbank, Datev, Münchener Rück,..)Fach- und TechnologievorträgeVortragsprogramm und Anmeldung: www.teamconf.de
Visual Studio Launch PromotionTauschen Sie Ihre Visual Studio Standard in eine höherwertige Visual Studio Edition Ihrer Wahl Anrechnung in Höhe von 299 € beim Kauf eines anderen VS Produktesvom 19. Februar bis zum 30. April 2008Nur bei den Partnern: PC Ware, SoftExpress, SOS und Zoschke (befinden sich alle in der Ausstellerhalle)
![Page 57: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/57.jpg)
Ask the ExpertsWir freuen uns auf Ihre Fragen: Technische Experten stehen Ihnen während der gesamten Veranstaltung in der Haupthalle zur Verfügung.
![Page 58: Jens K. Süßmeier, Daniel Walzenbach DB Consultant, Developer Evangelist Microsoft Deutschland GmbH.](https://reader036.fdocuments.us/reader036/viewer/2022062512/55204d7449795902118c8ca7/html5/thumbnails/58.jpg)
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.