Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

XML fejlesztések TSQL fejlesztések Tábla paraméter SQLCLR fejlesztések 8k limit feloldása Több paraméteres UDA-ek Ordered UDF-ek Entity Framework ADO.NET.

Hasonló előadás


Az előadások a következő témára: "XML fejlesztések TSQL fejlesztések Tábla paraméter SQLCLR fejlesztések 8k limit feloldása Több paraméteres UDA-ek Ordered UDF-ek Entity Framework ADO.NET."— Előadás másolata:

1

2

3 XML fejlesztések TSQL fejlesztések Tábla paraméter SQLCLR fejlesztések 8k limit feloldása Több paraméteres UDA-ek Ordered UDF-ek Entity Framework ADO.NET Data Services Új adattípusok HierarchyIDFileStreamSpatial

4 Továbbfejlesztett XML séma ellenőrzés Támogatás Office 12 Documentumok tárolásához és sémaellenőrzéséhez Lax ellenőrzés támogatása „Any” tartalomban amihez van séma validálják, amihez nincs, nem Teljes xs:dateTime implementáció Időzóna nélküli értékek támogatása Időzóna megőrzés Kibővült Lista és Unió típustámogatás Let záradék támogatása XQuery-ben Új fn:upper-case() / fn:lower-case() függvények Támogatott insert sql:variable(“@xml”) into /a/b

5 Változó számú paraméter típusos átvitelére az adatelérő rétegből a szerverbe CREATE TYPE LocationTableType AS TABLE ( LocationName VARCHAR(50), CostRate INT) CREATE PROC AddLocation @location LocationTableType READONLY AS … CREATE TYPE LocationTableType AS TABLE ( LocationName VARCHAR(50), CostRate INT) CREATE PROC AddLocation @location LocationTableType READONLY AS … SqlConnection con = new SqlConnection("..."); con.Open(); SqlCommand com = new SqlCommand( "dbo.AddLocation", con); com.Parameters.AddWithValue( "data", datatable); com.ExecuteNonQuery(); SqlConnection con = new SqlConnection("..."); con.Open(); SqlCommand com = new SqlCommand( "dbo.AddLocation", con); com.Parameters.AddWithValue( "data", datatable); com.ExecuteNonQuery();

6 Eljárások közötti változó számú adat átadására Nincs recompile create type BomType as table ( BomID int, ProductID int ) create procedure InsertBOM @Bom BomType readonly as... create type BomType as table ( BomID int, ProductID int ) create procedure InsertBOM @Bom BomType readonly as... declare @Bom as BomType; insert into @Bom (...) select... from Valami where... --Tábla paraméterátadás exec InsertBOM @Bom; declare @Bom as BomType; insert into @Bom (...) select... from Valami where... --Tábla paraméterátadás exec InsertBOM @Bom;

7 UDT, UDA: 8k limit feloldása SQL Server 2005-ben az UDT-k maximum 8000 bájtosak SQL Server 2008-ban 2GB-osak is lehetnek Ötletek Tömörített string vagy bináris adatok tárolására UDA: Több paraméteres saját aggregáló függvények Eddig csak 1 paraméterük volt Gyakori felhasználásuk korrelációszámításokban

8 UDF: Sorbarendezett kimenetű saját függvények Ha a tábla kimenetű függvény adatai eleve valamilyen sorrendben jönnek vissza Ha a lekérdezésben pont azonos ORDER BY van, nem kell sorbarendezni a szervernek Insert tábla select from függvény helyzetekben sokat gyorsíthat (az indexek karbantartásához jól jön az előrendezettség)

9

10 Domain Model (pl.: Entity Framework) Table Module (pl.: DataSet) Transaction Script (pl.: DbCommand) Forrás: Martin Fowler, Patterns Of Enterprise Application Architecture Az üzleti logika bonyolultsága A karbantartás munkaigényessége

11 ORM Adatbázis Táblák, sorok, oszlopok Idegenkulcsok Halmazorientált deklaratív nyelv Alkalmazás Kollekciók, objektumok, tulajdonságok Referenciák Algoritmusok programozása Automatizálható adatmegfeleltetés Jól definiálható folyamat Ismétlődő feladatok elvégzése Általánosítható, algoritmizálható feladat

12

13 Tábla megfeleltetése objektumnak Több tábla adatai egy objektumba Constraintek (elsődleges kulcs, nullozhatóság stb.) Öröklődések, sok-sok kapcsolatok kezelése { }

14 Öröklődés Table per Hierarchy Egyetlen tábla Table per Type Öröklődésenként egy tábla Table per Concrete Type Típusonként egy külön tábla Sok-sok kapcsolat Két oszlopos kapcsolótábla **

15 { Entity Framework } Egyszerű mapping

16 Elérhetőség IEnumerable IEnumerable LINQ to Entities Entity SQL VáltozáskövetésSaveChanges Réteges alkalmazások Attach, Detach Tárolt eljárások <FunctionImport <DefiningQuery Többféle adatbázis Providerek

17 Provider alapú Várható providerek RTM utáni három hónapon belül CoreLab – Oracle, MySql, PostgreSQL, SQLite IBM – DB2, Informix Dynamic Server SUN Microsystems – MySQL OpenLink Software – Oracle, Informix, Ingres, Sybase, MySQL, Postgre, DB2, Progress, MS SQL, ODBC, JDBC Sybase – SQL Anywhere VistaDB - VistaDB

18

19 Széleskörű értelmezhetőség AtomPub (XML) JSON Egyszerű publikálás és elérhetőség URI alapú címzés, HTTP protokoll Tárolt eljárás szerű adatelérés támogatása Biztonság Szabályozható objektum láthatóság Policy alapú elérés, Testreszabhatóság

20 HTTP

21 URI alapú címzés Presentation control Szűrés, sorbarendezés, lapozás, szülő-gyerek POST, GET, PUT, DELETE - CRUD LeírásPélda (http://some.com/service.svc) Legfelső szintű lista/Customers Egy elem a listában/Customers(184) Egy elem kapcsolatán link/Customers(184)/Orders Egy érték (property)/Customers(184)/Orders(15)/Orderdate

22 { REST navigáció }

23 Adat { szinkronizáció }

24 Változó hosszúságú, beépített CLR típus Hierarchia egy pontját azonosítja Logikai elérési út tömör leírása a fa gyökerétől az adott csomópontig Gazdag metóduskészlet a hierarchia kezeléséhez Egyszerűsítheti a hierarchikus adatok tárolását és lekérdezését elsősorban részfa lekérdezéseket Összehasonlítás, a<b mélységi sorrendben / /1/ /1/1/ /1/1/1/ /1/1/2/ /1/2/ /2//3/ /3/1//3/2/ Mélységi bejárás Szélességi bejárás

25 { HierarchyId }

26 Tárolási módot jelző attribútum VARBINARY(MAX)-hoz Strukturálatlan adatok közvetlenül a fájlrendszerben (NTFS) Csak a diszkterület határolja Tranzakcionálisan ép adatok Kétszintű programozási modell TSQL (a „kis” adatokhoz) Win32 Streaming API T-SQL tranzakcionalitással Integrált felügyelet Mentés / visszaállítás Kezelés Az SQL Server biztonsági rendszerével egységesített BLOB-ok adatbázisban és fájlrendszerben AlkalmazásAlkalmazás BLOB DB

27 { FILESTREAM }

28 Térbeli adatok tárolása és lekérdezése {szabványos} SQL formátummal Teljes Open Geospatial Consortium támogatás (OGC/SQL MM, ISO 19125) Új típusok (geometry, geography) Új metódusok (metszet, távolság, etc.) Új Spatial Indexek Egyelőre 2D-s adatok Virtual Earth integráció

29 Vektoros adatok Point Pont LineString Folytonos vonalak halmaza Polygon Sokszög (területek, régiók) KollekciókMultiPointMultiLineStringMultiPolygonGeometryCollection

30 Megvalósítás CLR típusként Jellemzők X, Y - koordináta Z – magasság, csak tárolja, de nem számol vele M – mértékegység és vonatkoztatási pont Spatial Reference Identifier, {SRID} Lista: sys.spatial_reference_systems Geometry típus Sík modell Geography típus Elliptikus, földi modell, a Föld felületén dolgozik Földrajzi szélesség, hosszúság M: WGS84

31 Néhány támogatott metódus-példa Alakzat területe: STArea kerülete vagy hossza: STLength befoglaló téglalapja: STBoundary Alakzatok között Metszet: STIntersects Unió (valamelyik által lefedett térrész): STUnion Távolság: STDistance

32 A spatial adatokon végzett bizonyos műveleteket támogatnak meg STIntersectsSTEqualsSTDistance Sík felbontása Mozaikozás Lefedések meghatározása Geography esetén síkra levetítés a felbontás előtt create spatial index idx_Spatial1 on USCity(geom) using geography_grid with ( grids = (high, high, high, high) ); create spatial index idx_Spatial1 on USCity(geom) using geography_grid with ( grids = (high, high, high, high) ); Indexbe

33 { Térbeli adatok kezelése }

34

35 { Kezdés 15:05-kor }


Letölteni ppt "XML fejlesztések TSQL fejlesztések Tábla paraméter SQLCLR fejlesztések 8k limit feloldása Több paraméteres UDA-ek Ordered UDF-ek Entity Framework ADO.NET."

Hasonló előadás


Google Hirdetések