Workshop Desarrollo con SQL Server 2008<br />John Alexander Bulla Torres<br />Ingeniero de Sistemas<br />MCTS | DCE Gold<b...
Agenda<br />Tipos de datos date y time<br />Tipo de dato Hierarchyid<br />Tipo de dato FileStream<br />Tipos de datos Espa...
Visión de la plataforma de datos Microsoft<br />Sus datos en cualquier lugar, en cualquier momento<br />Plataforma Empresa...
Las aplicaciones hoy en día<br />DatosRelacionales<br />Documentos & Multimedia<br />Aplicaciones<br />XML<br />Espacial /...
Novedades<br />Desarrollo<br />
DATE / TIME<br />Tipo de Dato DATE<br /><ul><li>Fecha únicamente
01-01-0001 a 31-12-9999 Calendario Gregoriano</li></ul>Tipo de dato TIME<br /><ul><li>Hora únicamente
Precisión variable - 0 a 7 lugares decimales para segundos
A 100 nanosegundos</li></li></ul><li>DATETIME2 / DATETIMEOFFSET<br />Tipo de Dato DATETIME2<br /><ul><li>01-01-0001 a 31-1...
Precisión variable a 100 nanosegundos</li></ul>Tipo de dato DATETIMEOFFSET<br /><ul><li>01-01-0001 a 31-12-9999 Calendario...
Precisión variable a 100 nanosegundos
Uso de la Zona horaria
No tiene soporte para zonas horarias con verano</li></li></ul><li>Tipos de DatosFecha<br />
demo<br />Date - Time<br />
Tipos de datohierarchyid<br />Tipo de Dato HIERARCHYID<br />El tipo de datos hierarchyid permite construir relaciones entr...
Tipos de datohierarchyid<br />Tipo de Dato HIERARCHYID<br />Representación jarárquica<br />Tipo de dato de las columnas<br...
demo<br />HierarchyID<br />
Tipo de datoFileStream<br />Tipo de Dato FILESTREAM<br />Es un atributo que se coloca a un tipo de datos varbinary<br />Pe...
Tipo de datoFileStream<br />Store BLOBs in DB + File System<br />Tipo de Dato FILESTREAM<br />Application<br />BLOB<br />E...
demo<br />Filestream<br />
Tipos de datosespaciales<br />Tipo de datos ESPACIALES<br />Almacenamiento y recuperación de datos espaciales usando la si...
Tipos de datosespaciales<br />Tipo de datos de geografía<br />Modelo de geoespaciales geodésica (“ Tierra redonda ”)<br />...
Definir puntos, líneas y áreas con coordenadas
Uso para áreas localizadas o superficies no-proyectadas como espacios interiores.</li></li></ul><li>Tipos de datosespacial...
demo<br />Spatial Data<br />
Tipos de datosespaciales<br />Oportunidad de Negocio<br />
Tipos de datosespaciales<br />Escenarios para tipos de datos espaciales<br />
Mejoras en T-SQL<br />Table-ValueParameters<br /><ul><li>Un tipo de dato tabla definido por el usuario que puede almacenar...
Se pueden pasar datos tabulares como parámetros a:
Stored Procedures
Funciones</li></ul>CREATE PROCEDURE<br />Nombre_Esquema.Usp_INS_Datos( @t table (A int) )<br />AS …<br />
Mejoras en T-SQL<br />Nueva Sentencia MERGE<br /><ul><li>También conocida como UPSERT (soporta DELETE)
Operación atómica combinando lógica para
INSERT
UPDATE
DELETE
Se manipulan datos:
Upcoming SlideShare
Loading in …5
×

WorkShop Desarrollo con SQL Server 2008

1,514 views

Published on

Desarrollo con SQL Server 2008

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,514
On SlideShare
0
From Embeds
0
Number of Embeds
21
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

WorkShop Desarrollo con SQL Server 2008

  1. 1. Workshop Desarrollo con SQL Server 2008<br />John Alexander Bulla Torres<br />Ingeniero de Sistemas<br />MCTS | DCE Gold<br />Twitter: @johnbulla<br />
  2. 2. Agenda<br />Tipos de datos date y time<br />Tipo de dato Hierarchyid<br />Tipo de dato FileStream<br />Tipos de datos Espaciales<br />Mejoras en TSQL<br />Implementación de Código Administrado<br />
  3. 3. Visión de la plataforma de datos Microsoft<br />Sus datos en cualquier lugar, en cualquier momento<br />Plataforma Empresarial de Datos<br />Services<br />Reporting<br />Integration<br />Analysis<br />Synch<br />DesarrolloDinámico<br />Query<br />Search<br />FILE<br />RDBMS<br />OLAP<br />XML<br />Mas allá de “relacional”<br />Mobile and Desktop<br />Server<br />Cloud<br />Vista interna del negocio<br />
  4. 4. Las aplicaciones hoy en día<br />DatosRelacionales<br />Documentos & Multimedia<br />Aplicaciones<br />XML<br />Espacial / Geográfico<br />
  5. 5. Novedades<br />Desarrollo<br />
  6. 6. DATE / TIME<br />Tipo de Dato DATE<br /><ul><li>Fecha únicamente
  7. 7. 01-01-0001 a 31-12-9999 Calendario Gregoriano</li></ul>Tipo de dato TIME<br /><ul><li>Hora únicamente
  8. 8. Precisión variable - 0 a 7 lugares decimales para segundos
  9. 9. A 100 nanosegundos</li></li></ul><li>DATETIME2 / DATETIMEOFFSET<br />Tipo de Dato DATETIME2<br /><ul><li>01-01-0001 a 31-12-9999 Calendario Gregoriano
  10. 10. Precisión variable a 100 nanosegundos</li></ul>Tipo de dato DATETIMEOFFSET<br /><ul><li>01-01-0001 a 31-12-9999 Calendario Gregoriano
  11. 11. Precisión variable a 100 nanosegundos
  12. 12. Uso de la Zona horaria
  13. 13. No tiene soporte para zonas horarias con verano</li></li></ul><li>Tipos de DatosFecha<br />
  14. 14. demo<br />Date - Time<br />
  15. 15. Tipos de datohierarchyid<br />Tipo de Dato HIERARCHYID<br />El tipo de datos hierarchyid permite construir relaciones entre los elementos de datos de una tabla, sobre todo para representar una posición en una jerarquía.<br />
  16. 16. Tipos de datohierarchyid<br />Tipo de Dato HIERARCHYID<br />Representación jarárquica<br />Tipo de dato de las columnas<br />Provee métodos para su manipulación<br />GetLevel() retorna el valor del nodo en el árbol<br />GetRoot() retorna la raíz del árbol<br />IsDescendant() devuelve true/false si el nodo es hijo de un padre<br />
  17. 17. demo<br />HierarchyID<br />
  18. 18. Tipo de datoFileStream<br />Tipo de Dato FILESTREAM<br />Es un atributo que se coloca a un tipo de datos varbinary<br />Permite que el contenido de esta columna se almacene directamente en el File System (utilizando NTFS) <br />Mejora notablemente el performance y llevando cualquier restricción de tamaño a los límites del FileSystem<br />
  19. 19. Tipo de datoFileStream<br />Store BLOBs in DB + File System<br />Tipo de Dato FILESTREAM<br />Application<br />BLOB<br />El almacenamiento de FILESTREAM se implementa como una columna VarBinary(MAX) en la que los datos son guardados como BLOBs en plataforma.<br />El tamaño máximo de los BLOBS esta limitado únicamente por el tamaño del volumen de almacenamiento.<br />DB<br />
  20. 20. demo<br />Filestream<br />
  21. 21. Tipos de datosespaciales<br />Tipo de datos ESPACIALES<br />Almacenamiento y recuperación de datos espaciales usando la sintaxis SQL estándar<br />Nuevos tipos de datos espaciales (geométricos, geográficos)<br />Nuevos índices espaciales<br />Conjunto completo de ofertas de componentes de consorcio de Open Geospatial (OGC/SQL MM, ISO 19125)<br />Integración con Virtual Earth<br />
  22. 22. Tipos de datosespaciales<br />Tipo de datos de geografía<br />Modelo de geoespaciales geodésica (“ Tierra redonda ”)<br />Definir puntos, líneas y áreas con longitud y latitud<br />Cuenta para incurvación planetaria y obtener las distancias precisa “ gran círculo ”<br />Tipo de datos de geometría<br /><ul><li>Modelo de geoespacialesPlanar (“ tierra plana ”)
  23. 23. Definir puntos, líneas y áreas con coordenadas
  24. 24. Uso para áreas localizadas o superficies no-proyectadas como espacios interiores.</li></li></ul><li>Tipos de datosespaciales<br />LineString<br />MultiLineString<br />Polygon<br />MultiPolygon<br />
  25. 25. demo<br />Spatial Data<br />
  26. 26. Tipos de datosespaciales<br />Oportunidad de Negocio<br />
  27. 27. Tipos de datosespaciales<br />Escenarios para tipos de datos espaciales<br />
  28. 28. Mejoras en T-SQL<br />Table-ValueParameters<br /><ul><li>Un tipo de dato tabla definido por el usuario que puede almacenar datos de tipo tabular
  29. 29. Se pueden pasar datos tabulares como parámetros a:
  30. 30. Stored Procedures
  31. 31. Funciones</li></ul>CREATE PROCEDURE<br />Nombre_Esquema.Usp_INS_Datos( @t table (A int) )<br />AS …<br />
  32. 32. Mejoras en T-SQL<br />Nueva Sentencia MERGE<br /><ul><li>También conocida como UPSERT (soporta DELETE)
  33. 33. Operación atómica combinando lógica para
  34. 34. INSERT
  35. 35. UPDATE
  36. 36. DELETE
  37. 37. Se manipulan datos:
  38. 38. Contra una sola tabla destino
  39. 39. Basado en una tabla fuente (o expresión tipo tabla)
  40. 40. Cumple con el estándar SQL 2005 (con extensiones)</li></li></ul><li>Mejoras en T-SQL<br />MERGE<br />destino<br />Merge<br />Coincide UPDATE<br />origen<br />No coincide INSERT<br />No existe DELETE<br />
  41. 41. Mejoras en T-SQL<br />TipGrouping Sets<br /><ul><li>Extensión de la clausula GROUP BY
  42. 42. Permite definir diferentes agrupaciones en la misma consulta.
  43. 43. Produce una sola salida equivalente a utilizar un UNION ALL de las agrupaciones.</li></ul>GROUP BY GROUPING SETS ((Year, Quarter), (Country),<br /> (Year, Quarter) ,<br /> (Country) )<br />
  44. 44. demo<br />T-SQL<br />
  45. 45. Implementación de CódigoAdministrado<br />Que es el CLR?<br />2.0<br />.NET Framework 2.0<br />3.0<br />.NET Framework 3.0<br />VB<br />C#<br />J#<br />・・・<br />CLS y CTS<br />ASP.NET<br />WindowsForms<br />(WPF)<br />(WCF)<br />(WF)<br />(WCS)<br />Biblioteca de Clases y ADO.NET <br />Common Language Runtime (CLR)<br />Windows Seven、 Windows Vista、 Windows XP、 Windows Server 2003<br />
  46. 46. Implementación de CódigoAdministrado<br />Ventajas del Código Administrado<br /><ul><li>¡Escoge tu lenguaje de programación!
  47. 47. C#, Vb.Net, J#, C++, Cobol, Delphi, etc.
  48. 48. Desarrollo más rápido
  49. 49. Interoperabilidad
  50. 50. Seguridad
  51. 51. Aseguramiento de tipos (Type Safety)</li></li></ul><li>Implementación de CódigoAdministrado<br />Integración del CLR en SQL Server 2008<br /><ul><li>Ejecución de código administrados utilizando ensamblados
  52. 52. Creación de storedprocedures, triggers, user-definedfunctions, user-definedtypes, aggregates.
  53. 53. Beneficios de la integración:
  54. 54. Enriquecimiento en el modelo de programación.
  55. 55. Seguridad
  56. 56. Entorno de desarrollo unificado (Visual Studio .Net)
  57. 57. Performance y escalabilidad</li></li></ul><li>Implementación de CódigoAdministrado<br />Código Administrado vs T-SQL<br /><ul><li>Utiliza Código Administrado para:
  58. 58. Procedimientos que tengan lógica compleja
  59. 59. Acceder a la librería de clases de .Net
  60. 60. Uso intensivo de CPU
  61. 61. Utiliza Transact-SQL para acceso “Básico” de datos.
  62. 62. Performance y escalabilidad</li></li></ul><li>demo<br />Managed Code<br />
  63. 63. Preguntas<br />?<br />
  64. 64. Blog Personal<br /><ul><li>http://johnbulla.spaces.live.com</li></ul>Recursos<br />MSDN Webcast: New T-SQL Programmability Features in SQL Server 2008 (Event ID: 1032357753)<br />http://www.microsoft.com/VirtualEarth/<br />http://dev.live.com/virtualearth/<br />http://www.microsoft.com/sqlserver/2008/en/us/default.aspx<br />http://www.microsoft.com/spain/sql/default.mspx<br />SQL Server 2008 Developer Training Kit<br />Comunidades<br /><ul><li>http://www.bogotadotnet.org</li></li></ul><li>http://www.bogotadotnet.org<br />Comunidad de Desarrolladores<br />

×