SQL Server Compact TrabajoInve JESUS ALMIRON
SQL Server Compact TrabajoInve JESUS ALMIRON
Microsoft SQL Server Compact (SQL Server CE) es un motor de base de datos
relacional, de libre descarga y distribucin, tanto para dispositivos mviles como para
aplicaciones escritorio. Especialmente orientada a sistemas ocasionalmente conectados,
ofrece unas caractersticas especialmente tiles para clientes ligeros. La versin ms
reciente es SQL Server Compact 3.5 SP2. Anteriormente era conocida como SQL Server
CE o SQL Server Mobile. Desde la versin 2.0, el lanzamiento de SQL Server Compact ha
ido ligado al de Microsoft Visual Studio .NET.
Caractersticas
Una base de datos SQL Server Compact, a diferencia de una base de datos SQL
Server que se expone como un servicio de Windows, se ejecuta bajo el proceso de la
aplicacin que la consume (in-process). El tamao mximo del archivo de base de datos
es de 4 Gb. y la extensin por defecto es .sdf la cual puede ser modificada. El nombre de
la base de datos est limitado a 128 caracteres. En cuanto a limitaciones destacar que el
nmero mximo de tablas por base de datos es de 1024 con un tamao mximo por
registro de 8060 bytes con un tamao por pgina de 4 Kb. y 2 Gb. para campos BLOB.
Respecto a los tipos de datos de texto, SQL Server Compact nicamente soporta tipos de
datos de cadena compatibles con Unicode (nchar, nvarchar, ntext).
A nivel de seguridad SQL Server Compact 3.5 ofrece la posibilidad de cifrado del fichero
de base de datos con una contrasea de acceso restringida a un mximo de 40 carcters
ofreciendo tres tipos de modos de cifrado:
Existe una nica base de datos temporal por sistema la cual es imprescindible para llevar a
cabo, por ejemplo, operaciones ORDER BY. Su creacin es implcita si no se especifica lo
contrario en la cadena de conexin.
En entornos de ejecucin bajo plataforma Windows 32/64 bits, SQL Server Compact
soporta transacciones ligeras a travs de contextos transaccionales administrados por
LTM (Lightweight Transaction Manager) expuestos desde la versin .NET Framework 2.0 a
travs del espacio de nombres System.Transaction. Para plataformas Windows
CEpodemos hacer uso de las sentencias BEGIN, COMMIT y ROLLBACK TRANSACTION
de T-SQL as como a travs del objeto SqlCeTransaction expuesto en el espacio de
nombres System.Data.SqlServerCe.
Sincronizacin
Existen varias mejoras disponibles para el proceso de rplica y sincronizacin de datos con
SQL Server Compact Edition, entre las que se incluyen las siguientes:
Compatibilidad con varias suscripciones
En las versiones anteriores de SQL Server Compact Edition, slo se poda crear una
suscripcin para cada base de datos. Cuando en un entorno los datos publicados se
derivaban de varias publicaciones, el desarrollador tena que crear una base de datos
de suscripcin independiente para cada publicacin y, a continuacin, especificar cul
de ellas era la que la aplicacin necesitaba para abrirse. Con SQL Server Compact
Edition, una misma base de datos puede contener varias suscripciones, lo que reduce
la cantidad de programacin necesaria. Para obtener ms informacin acerca de las
suscripciones mltiples, vea "Compatibilidad con varias suscripciones" en los Libros en
pantalla de SQL Server 2005 Compact Edition.
Compatibilidad y sincronizacin multiusuario
Para que varias aplicaciones puedan tener acceso simultneo a la misma base de
datos, SQL Server Compact Edition proporciona compatibilidad multiusuario. Esta
caracterstica permite que varios usuarios de una base de datos sincronicen los datos
sin tener que desconectar la base de datos antes de utilizar la replicacin de mezcla o
el acceso a datos remotos (RDA). Para obtener ms informacin acerca de la
sincronizacin multiusuario, vea "RDA y acceso multiusuario" y "Sincronizacin y
acceso multiusuario" en los Libros en pantalla de SQL Server Compact Edition.
Estado de progreso de la sincronizacin
Los desarrolladores pueden utilizar las API administradas para proporcionar
comentarios sobre el estado de la sincronizacin, a fin de informar a los usuarios. Para
obtener ms informacin acerca de la barra de estado, vea "Sincronizacin de datos
asincrnica" en los Libros en pantalla de SQL Server Compact Edition.
Seguimiento por columnas
En versiones anteriores de SQL Server Compact Edition, se sincronizaba la fila entera
con Microsoft SQL Server, incluso aunque slo se hubiera modificado una de sus
columnas. Esto sola elevar los tiempos de sincronizacin cuando las columnas no
modificadas de la fila contenan gran cantidad de datos. En SQL Server Compact
Edition slo se sincronizan las columnas modificadas. Para obtener ms informacin
acerca del seguimiento por columnas, vea "Using Row-Level and Column-Level
Tracking" en los Libros en pantalla de SQL Server Compact Edition.
Motor de almacenamiento
Las caractersticas nuevas y mejoradas del motor de almacenamiento de SQL Server Compact
Edition aumentan la confiabilidad y el rendimiento de las aplicaciones mviles. Entre estas
caractersticas se incluyen las siguientes:
Motor de almacenamiento revisado
La arquitectura del motor de almacenamiento se ha escrito de nuevo a fin de
optimizarla para una arquitectura mvil en la que las aplicaciones comparten un bloque
de memoria comn. La mayor confiabilidad de los datos se garantiza ahora gracias a la
compatibilidad real con las propiedades de atomicidad, coherencia, aislamiento y
permanencia (ACID), incluso cuando se producen problemas de energa o
interrupciones de la conectividad. Para obtener ms informacin, vea "Informacin
general del motor de base de datos (SQL Server Compact Edition)" en los Libros en
pantalla de SQL Server Compact Edition.
Compatibilidad multiusuario
Para permitir que varias aplicaciones tengan acceso a la misma base de datos
simultneamente, SQL Server Compact Edition aporta el bloqueo de filas de las pginas
de datos, el bloqueo de pginas y niveles de aislamiento, a fin de ayudar a garantizar la
integridad de los datos durante esos accesos concurrentes. Para obtener ms
informacin acerca de los bloqueos, vea "Bloquear (SQL Server Compact Edition)" y
"Extensin de bloqueo" en los Libros en pantalla de SQL Server Compact Edition.
Reutilizacin automtica de pginas vacas
SQL Server Compact Edition admite la caracterstica de reduccin automtica, que
reclama automticamente las pginas de datos que no estn en uso para ahorrar
espacio de almacenamiento en el dispositivo. Para obtener ms informacin acerca de
la reduccin automtica, vea "Mantener bases de datos" en los Libros en pantalla de
SQL Server Compact Edition.
Integracin con Microsoft Visual Studio
2005
Existen dos mejoras importantes en la integracin de SQL Server Compact Edition con Microsoft
Visual Studio 2005:
Administracin de bases de datos
Los desarrolladores pueden administrar una base de datos de SQL Server Compact
Edition en un equipo de escritorio o en los dispositivos compatibles utilizando Visual
Studio 2005. Gracias a esta caracterstica, podrn arrastrar una tabla de SQL Server
Compact Edition hasta un control de la aplicacin para que ste se enlace con ella
automticamente.
Instalacin automtica de SQL Server Compact Edition
Cuando se utiliza Visual Studio para generar una aplicacin de Microsoft .NET que
utiliza SQL Server Compact Edition, el motor de SQL Server Compact Edition se instala
automticamente en el dispositivo la primera vez que se implementa la aplicacin. Si la
aplicacin nativa se crea con Visual Studio 2005, es preciso instalar SQL Server Compact
Edition de forma manual. Para obtener ms informacin, vea "Implementar aplicaciones
de dispositivos inteligentes" en los Libros en pantalla de SQL Server Compact Edition.
Compatibilidad con Directorio de datos
DataDirectory es una cadena de sustitucin que indica la ruta de acceso de la base de
datos. DataDirectoryhace que compartir un proyecto e implementar una aplicacin
sean tareas sencillas, ya que evita la necesidad de incluir en el cdigo la ruta de acceso
completa. Por ejemplo, en lugar de tener la cadena de conexin siguiente:
"Data Source= c:\program files\MyApp\Mydb.sdf"
Si se utiliza |DataDirectory| (entre barras verticales, como se muestra), puede tener la
cadena de conexin siguiente:
"Data Source = |DataDirectory|\Mydb.sdf"
La propiedad DataDirectory se establece para AppDomain mediante una llamada
a AppDomain.SetData.
Implementacin ClickOnce para aplicaciones administradas
ClickOnce es una nueva tecnologa de instalacin de software que SQL Server Compact
Edition admite para implementar aplicaciones administradas en equipos de escritorio y
Tablet PC. ClickOnce simplifica la implementacin de una aplicacin basada en
Windows en un servidor Web o recurso compartido de archivos de red. Para los
administradores, la implementacin o actualizacin de una aplicacin consiste en
actualizar los archivos en un servidor. No es necesario actualizar cada cliente por
separado. Microsoft Visual Studio 2005 proporciona compatibilidad completa para la
publicacin y actualizacin de aplicaciones implementadas con ClickOnce. La
implementacin ClickOnce est disponible para proyectos creados en Visual Basic,
Visual C# y Visual J#, pero no en Visual C++.
Servicios de Datos y Motores de Base de
Datos Integradas (Comparaciones)
Microsoft ofrece dos tipos diferentes de motores de bases de datos SQL Server. Un servicio de
base de datos est diseado especialmente para funcionar como un servicio en un entorno
cliente / servidor, sirviendo a muchos clientes al mismo tiempo. Un motor de base de datos
integrada normalmente se ejecuta conforme el proceso de la aplicacin lo requiere, es un
componente de la aplicacin, y sirve a un cliente a la vez.