La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

MGB 2003 Para Desarrolladores

Presentaciones similares


Presentación del tema: "MGB 2003 Para Desarrolladores"— Transcripción de la presentación:

1 MGB 2003 Para Desarrolladores
SQL Server 2005 Para Desarrolladores Juan Carlos Heredia Mayer Microsoft Certified Profesional Freelance Consulting © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

2 Agenda Integración CLR y SQL SERVER 2005 HTTP ENDPOINTS XML
SQL SERVER 2005 y ADO.NET 2.0

3 Para desarrolladores Integración con el Framework .net Tecnologías XML
Soporte XQuery SQL Service Broker Mejoras en T-SQL Mejoras en búsquedas Full Text Mejoras en Seguridad Funcionalidades HTTP/SOAP

4 1. SQL Server y .NET La integración de SQL Server con el runtime de .NET tiene las siguientes metas: seguridad confiabilidad rendimiento

5 Configure CLR en SQL Server 2005
CLR es una opción de configuración avanzada del servidor Ejecute la siguiente sentencia para deshabilitar el CLR sp_configure ‘show_advanced_options’, 1 GO RECONFIGURE sp_configure ‘clr enabled’, 0

6 La Experiencia del Desarrollador
MGB 2003 La Experiencia del Desarrollador Compila VB,C#,C++ Assembly: “TaxLib.dll” VS .NET Project SQL Data Definition: create assembly … create function … create procedure … create trigger … create type … Runtime hosted by SQL (in-proc) SQL Server SQL Queries: select sum(tax(sal,state)) from Emp where county = ‘King’ © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

7 Cómo importar un assembly existente?
Crear el nombre del objeto para el assembly 1 Referenciar el Assembly 2 Establecer Permisos de Seguridad 3 CREATE ASSEMBLY HelperLibrary FROM '\\Server1\Private\AProject\bin\HelperLibrary.dll' WITH PERMISSION_SET SAFE -- default value CREATE ASSEMBLY Contacts FROM 'C:\AProject\bin\Contacts.dll' WITH PERMISSION_SET EXTERNAL_ACCESS CREATE ASSEMBLY HelperLibrary FROM '\\Server1\Private\AProject\bin\HelperLibrary.dll' CREATE ASSEMBLY Contacts FROM 'C:\AProject\bin\Contacts.dll' CREATE ASSEMBLY HelperLibrary CREATE ASSEMBLY Contacts

8 Cómo crear objetos de Base de Datos utilizando Código Manejado
Use la sentencia CREATE apropiada 1 Referencie el Assembly 2 Use el objeto de base de datos 3 CREATE PROCEDURE Person.UpdatePhoneList AS EXTERNAL NAME Contacts. PhoneList.SaveList GO EXEC Person.UpdatePhoneList CREATE PROCEDURE Person.UpdatePhoneList AS EXTERNAL NAME Contacts.PhoneList.SaveList GO CREATE PROCEDURE Person.UpdatePhoneList AS

9 Proyectos SQL Server en Visual Studio 2005
Proyectos para la creación de objetos de base de datos Automáticamente se incluyen las referencias necesarias sqlaccess.dll System.Data.dll Se incluyen plantillas para cada tipo de objeto Permite su instalación y pruebas inmediatas Stored procedure Trigger User-defined function User-defined type Aggregate

10 Cómo crear Store Procedures Manejados
Cree un método estático público en la clase 1 Agregue el atributo SqlProcedure para la instalación 2 Cree la lógica del store procedure manejado 3 public class ContactCode { [SqlProcedure(Name="GetContactNames")] public static void GetContactNames() SqlCommand cmd = SqlContext.GetCommand(); cmd.CommandText = "SELECT FirstName + ' ' + LastName" + " AS [Name] FROM Person.Contact"; SqlDataReader rdr = cmd.ExecuteReader(); SqlPipe sp = SqlContext.GetPipe(); sp.Send(rdr); } public class ContactCode { [SqlProcedure(Name="GetContactNames")] public static void GetContactNames() } public class ContactCode { public static void GetContactNames() }

11 Cómo crear triggers manejados?
Cree un método estático publico en la clase 1 Agregue el atributo SqlTrigger para la instalación 2 Cree la lógica del Trigger Manejado 3 public class ContactCode { [SqlTrigger(Name="ContactUpdTrg", Target="Person.Contact", Event="FOR UPDATE")] public static void Change () SqlTriggerContext trg = SqlContext.GetTriggerContext(); if (trg.TriggerAction == TriggerAction.Update) if (trg.ColumnsUpdated[7] == true) //send to each new contact } public class ContactCode { [SqlTrigger(Name="ContactUpdTrg", Target="Person.Contact", Event="FOR UPDATE")] public static void Change () } public class ContactCode { public static void Change () }

12 Cómo crear funciones definidas por el usuario manejadas
Cree un método estático público en la clase 1 Agregue el atributo SqlFunction 2 Implemente la función manejada 3 public class MyFunctions { [SqlFunction(Name="GetLongDate" )] public static SqlString GetLongDate(SqlDateTime DateVal) // Return the date as a long string return DateVal.Value.ToLongDateString(); } public class MyFunctions { [SqlFunction(Name="GetLongDate" )] public static SqlString GetLongDate(SqlDateTime DateVal) } public class MyFunctions { public static SqlString GetLongDate(SqlDateTime DateVal) }

13 Cómo crear funciones de agregación manejadas
Cree una clase pública 1 Agregue los atributos Serializable y SqlUserDefinedAggregate 2 Cree los métodos Init, Accumulate, Merge y Terminate 3 [Serializable, SqlUserDefinedAggregate(…)] public class CommaDelimit { public void Init() {…} public void Accumulate(SqlString Value) public void Merge(CommaDelimit Group) public SqlString Terminate() } [Serializable, SqlUserDefinedAggregate(…)] public class CommaDelimit { } public class CommaDelimit { }

14 Cómo crear tipos definidos por el usuario manejados
Cree una clase o estructura pública 1 Agregue los atributos Serializable y SqlUserDefinedType 2 Maneje la Nulabilidad 3 Soporte la conversión de strings 4 Provea propiedades públicas para acceder a los datos privados 5

15 Cómo instalar los objetos de la base de datos con Visual Studio 2005
Use atributos cuando cree el código manejado 1 [SqlProcedure(Name="ProcName")] public static void Proc ( ) Use el menú Deploy 2

16 MGB 2003 © 2003 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

17 2. HTTP Endpoints Es posible configurar un servidor SQL Server como un Servicio Web, que pueda escuchar nativamente llamadas HTTP SOAP, creando lo que es llamado como “HTTP Endpoint” y definiendo métodos que son expuestos a través de este endpoint. Cuando un HTTP endpoint es creado, este debe tener asignado una dirección URL unica para recibir las llamadas, por ejemplo si se crea un endpoint en la URL " , los pedidos SOAP son enviados directamente a esta URL y tomados por http.sys, el cual enrutará el pedido a la base de datos SQL Server que tiene almacenado el endpoint.

18 Creación de un HTTP EndPoint
Para crear un endpoint, en primer lugar es necesario la creación de un stored procedure, que en este caso se llama Hello_world en la base de datos master, utilizando el siguiente T-SQL: CREATE PROCEDURE hello_world nvarchar(256)) AS BEGIN as 'message' END Luego use el siguiente código T-SQL para crear el HTTP endpoint, el cual permitirá acceder este stored procedure como si fuera un método Web CREATE HTTP ENDPOINT hello_world_endpoint AS AUTHENTICATON = ( INTEGRATED ), PATH = '/sql/demo', PORTS = ( CLEAR ), STATE = STARTED FOR SOAP ( METHOD ' (NAME = master.dbo.hello_world) WITH BATCHES = ENABLED, WSDL = DEFAULT )

19 MGB 2003 © 2003 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

20 3. XML Tipo de Datos XML Primera clase de tipos SQL Es usada como
MGB 2003 3. XML Tipo de Datos XML Primera clase de tipos SQL Es usada como Columna Variable Parámetro Grabe instancias tipificadas o no tipificadas de XML Chequeos de validaciones y de estructura © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

21 XML Query - XQuery Consulte un documento XML y sus datos
MGB 2003 XML Query - XQuery Consulte un documento XML y sus datos Basado en estándares — W3C (borrador de trabajo) Métodos en tipos de datos XML Query() Value() Exist() Modify() INT XML … … Modify Update © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

22 Características de XQuery
MGB 2003 Características de XQuery FLWR — FOR/LET/WHERE/RETURN Incluye XPath 2.0 = 123]) Constructors de Elementos(<topic>) Operadores para preservar el orden Strongly-typed © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

23 4. SQL SERVER 2005 – ADO.NET 2.0 Hay muchas cosas nuevas en la siguiente versión de ADO.Net. Desde el nuevo soporte para notificaciones en lo cambios realizados en las consultas, Hasta los MARS (Multiple Active Result Sets). ADO.net evoluciona el acceso y la manipulación de datos de un Dataset, para lograr mejor escalabilidad y flexibilidad. SQL Server 2005 introduce el soporte a notificaciones para las consultas, ahora tú puedes utilizar este soporte para enviar un comando a SQl Server y pedir que una notificación sea generada si ejecutando el mismo comando se producen diferentes resultados de los obtenidos inicialmente. Se puede lograr esto utilizando un objeto de dependencia que detecta cuando los datos han cambiado.

24 SQL SERVER 2005 – ADO.NET 2.0 Multiple Active Result Sets (MARS)
Provee la habilidad de tener más de una respuesta pendiente por cada conexión. En particular tener más de un resultado por defecto por cada conexión. Snapshot Isolation Support SQL Server 2005 introduce un nuevo nivel de aislamiento SNAPSHOT. Es un mecanismo de versionamiento para cada registro en las cuales cada versión es grabada para cada lector de datos. Este modelo de aislamiento permite alta disponibilidad para aplicaciones solo lectura, y evita bloqueos de lecturas en ambientes OLTP

25 MGB 2003 © 2003 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

26 MSDN Recursos esenciales para Desarrolladores
MGB 2003 MSDN Recursos esenciales para Desarrolladores Servicios de Subscripción Library, OS, Professional, Enterprise, Universal Delivered via CD-ROM, DVD, Web Información Online MSDN Online, MSDN Flash, How-To Resources, Download Center KEY MESSAGE: MSDN SLIDE BUILDS: None SLIDE SCRIPT: MSDN is the essential resource for developers. It offers subscriptions, such as MSDN online and MSDN Flash. The MSDN Web site is becoming the central portal for developers. MSDN offers membership programs which are coordinated online, as well as user groups. There are print publications as well as a variety of training and events—at local, national, and international levels. SLIDE TRANSITION: ADDITIONAL INFORMATION FOR PRESENTER: Eventos y Entrenamiento MSDN Webcasts, MSDN Online Seminars, Tech·Ed, PDC, Developer Days Públicaciones Impresas MSDN Magazine MSDN News Programas de Membresía MSDN User Groups © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

27 MGB 2003 Gracias! Ha revisar el material y poner en práctica lo aprendido, Hasta el próximo Evento © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

28 © 2003-2004 Microsoft Corporation. All rights reserved.
MGB 2003 © Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Descargar ppt "MGB 2003 Para Desarrolladores"

Presentaciones similares


Anuncios Google