Introducción
Antes de explicar semejanzas y diferencias entre MS Access y MS SQL Server,
debemos entender que es lo que son. Ambos software se
conocen con el nombre de sistema de gestión de bases de datos (SGBD),
estos son programas que permiten administrar datos, ya sea
mediante el uso, la actualización y/o la creación de estos. Los
datos pueden estar presentes en una, o muchas bases de datos, y ser utilizados
por uno o varios usuarios. El objetivo fundamental de un SGBD es suministrar a
los usuarios herramientas que le permitan manejar los datos para entregar valor
y/o utilidad a estos.
Descripción MS Access:
Sistema de gestión de bases de datos creado por Microsoft, desarrollado
principalmente para uso personal o de pequeñas organizaciones. MS Access es una
potente base de datos, capaz de trabajar sobre sí misma o bien con otros lenguajes
de programación, como Visual Basic. El software permite realizar consultas directas a las
tablas contenidas mediante instrucciones SQL. Dentro de
las principales funciones presentes en MS Access podemos mencionar que los usuarios pueden crear tablas,
consultas, formularios e informes, y conectarlos entre sí con macros. Los usuarios más avanzados pueden
usar VBA para
escribir soluciones para una manipulación más compleja de
datos y control de usuarios.
Descripción MS sql Server:
Sistema de gestión de bases de datos relacionales, también creado por
Microsoft, que ha sido desarrollado en base a SQL, una de sus principales características radica en
las cantidades de datos y consultas que puede procesar de manera simultánea. Además MS SQL Server
permite: soporte de transacciones, soporte procedimientos almacenados, inclusión
de un entorno gráfico de administración, permite trabajar en modo
cliente-servidor y por último permite administrar información de otros
servidores de datos. Está diseñado para grandes compañías, y administrar un gran
número de transacciones simultáneas.
Semejanzas y diferencias:
A pesar de ser dos SGBB, Access y SQL server son muy distintos. Entre sus principales similitudes podemos encontrar:
1-. Ambos son sistemas de almacenamiento de datos en forma de tablas relacionales.
2-. Ambos admiten comandos en lenguaje SQL, aunque el de SQL Server está mucho más desarrollado, ya que realmente es la interfaz del servidor con el cliente.
3-. Ambos son sistemas creados por Microsoft.
Las
diferencias entre estos Sistemas de almacenamiento son más profundas y la primera
a mencionar es el enfoque de cada uno de éstos. Access está más enfocado en
“uso de escritorio” o personal, pensado para manejarse desde un solo equipo (o
máximo una pequeña red local). Cabe mencionar que no esta pensado para que
muchos clientes accedan al mismo tiempo a las bases de datos. Por otro lado, SQL
Server permite el acceso a las bases de datos a miles de usuarios
simultáneamente, y no sólo eso, sino que también permite almacenar grandes
volúmenes de datos (TeraBytes) que incluyen elementos como fotografías, videos,
textos, números, etc, con millones de registros.
Otra diferencia entre estos Sistemas de almacenamiento se aprecia a la hora de publicar bases de datos en Internet; SQL Server es autónomo, mientras que Access no lo es. Al utilizar Access en el manejo de bases de datos en Internet, se genera una sobrecarga de consumo de memoria que recaerá sobre el servidor web, generándole problemas por ejemplo en todas las páginas web del dominio. Esto nunca ocurrirá con SQL Server, pues es él quién realiza toda la gestión relacionada con los datos.
Otra diferencia es que SQL Server permite que los clientes puedan manipular los datos desde cualquier computador conectado a Internet, mientras que Access sólo permite crear aplicaciones que trabajan en red con los archivos, sin embargo todo el procesamiento se efectúa en un solo equipo.
SQL
Server ofrecer ventajas a la hora de publicar datos en Internet, como por
ejemplo la estabilidad para el servidor web, ya que se libera al servidor web
de las actividades referentes a los datos, es decir no lo sobrecarga, y en
conclusión podrá mejorar su rendimiento y estabilidad. Access, hace todo lo
contrario, es decir sobrecarga al servidor web, aumentando el riesgo de
inestabilidad para el servidor web.
Sin embargo, Access también ofrece ventajas, como por ejemplo la compatibilidad a la hora de compartir archivos, ya que es más probable que las personas tengan Access en sus computadores, y que por lo tanto este intercambio se efectúe sin problemas.
Otra ventaja que tiene Microsoft Access es la capacidad de construir sistemas de software para gestionar una gama de servicios muy rápidamente. Además, Access, permite crear una interfaz usuaria totalmente interactiva, que permite a los usuarios introducir datos e informar sobre éstos, mientras que SQL Server sólo almacena los datos en tablas, no tiene la capacidad de realizar un front-end, como Access.
SQL Server usa Address Windowing Extension (AWE) para hacer el direccionamiento de 64-bit. Esto le impide usar la administración dinámica de memoria, y sólo le
permite alojar un máximo de 64 GB de memoria compartida. Además SQL Server no
maneja compresión de datos (excepto la versión 2008 Enterprise Edition), por lo
que las bases de datos pueden llegar a ocupar mucho espacio en disco y requiere
de un sistema operativo Microsoft Windows, por lo que no puede instalarse, por
ejemplo, en servidores Linux.
La siguiente tabla evidencia diferencias entre MS Access y MS SQL Server
Característica
|
MS Access
|
MS SQL Server
|
Nº de
Procesadores en Paralelo
|
1
|
16
|
Instancias
de servidores sobre un ordenador
|
Ninguna
|
Ilimitado
|
Procesamiento
de consultas más rápido
|
bajo
|
Muy Alto
|
Arquitectura
cliente-servidor
|
No
|
Sí
|
Consola
o interfaz para administrar la base de datos
|
Si
|
Si
|
Escalabilidad
|
Ninguna
|
Si, Procesadores Multisimétricos
|
Nº de
Usuarios conectados
|
255
|
Ilimitados
|
Limite
de usuarios concurrentes
|
255
|
Ilimitados
|
Seguridad
integrada
|
Si
|
Si, A nivel de SQL y de sistema operativo
|
Admite triggers
|
No
|
Si
|
Admite procedimientos almacenados
|
No
|
Si
|
Relaciones de tablas e integridad de referencia
|
Si
|
Si
|
Funciones Meta datos
|
No
|
Si
|
Funciones Básicas de SQL
Funciones Integradas
Estas funciones no pueden ser modificadas, y ayudan a realizar diversas operaciones. Devuelven tipos de datos escalares o tablas. Generalmente las funciones integradas son utilizadas para:
- Tener acceso a información del sistema SQL Server sin acceder a las tablas directamente.
- Permite realizar tareas como SUM, GETDATE o IDENTITY.
Las más
parecidas a las funciones del lenguaje de la programación, normalmente son usadas para cálculos matemáticos básicos, ya
que devuelven un valor único (escalar). En su formato simple no cuentan con un
cuerpo de función, a diferencia de las funciones escalares de varias
instrucciones, las que sí cuentan con uno, definido en un bloque BEGIN-END,
además de una serie de instrucciones de Transact-SQL que devuelven un valor
único. Mientras que en el formato simple, el resultado es un valor escalar proviniendo
de una instrucción única, generalmente la instrucción SELECT.
Tipo de Funciones Escalares:
Funciones con
Valores de Tabla
Como
su nombre lo dice las funciones con valores de tabla definidas por el usuario
devuelven un tipo de datos table. Al
igual que las escalares simple no tienen cuerpo, por lo que la tabla es el
resultado de una instrucción SELECT.
Las
funciones con valores de tabla de varias instrucciones, sí poseen un cuerpo de
la función y contienen una serie de instrucciones de Transact-SQL, las que
crean e insertan filas en los resultados de la tabla. El cuerpo de la función
está definido por un bloque BEGIN-END.
Estas
funciones son un híbrido entre vista y procedimiento almacenado,
ya que son consultas con una instrucción SELECT, pero a diferencia de los
procedimientos anteriores, las funciones con valores de tabla permiten el uso
de parámetros. Esta función resulta ser más eficiente al realizar consultas con
parámetros, a diferencia de las otras 2.
Conclusión:
Ambos productos creados por Microsoft están enfocados a públicos completamente
distintos. En primer lugar, Access está enfocado al usuario promedio de
computadores, aquel que desea aprender a usar SQL, y tiene algún tipo de base
de datos personal que desea manejar. Por lo mismo en nivel empresarial, es
utilizado solo en pequeñas Pymes, que generalmente lo obtienen de forma ilegal,
o aprovechando que viene integrado en el
paquete empresarial de Office. Es muy extraño ver Access en empresas más
grandes, principalmente por su valor comercial, ya que la licencia permite ser
instalada solo en un equipo, y se debe comprar una licencia por cada equipo que
la empresa posee, y la integración entre estos no es automática. En cambio, la
licencia de SQL Server se adquiere para un conjunto de equipos, y en caso de
ser necesario extender la cantidad de equipos integrados, solo se cancela un
diferencial a al costo total del producto. Además de que la integración de
nuevos equipos al sistema de base de datos se realiza de forma automática, como
se detalló con anterioridad.
Además, como se dijo anteriormente,
SQL Server posee capacidad para integrar varios equipos, con un servidor
central, lo cual aumenta la cantidad de consultas y/o transacciones simultaneas
que se pueden realizar, por lo que lo más probable es que al salir al mundo
laboral, nos encontremos con este tipo de aplicaciones, o alguna similar de
otro proveedor (Oracle, IBM, etc.). Sin embargo, el sistema relacional, y el
lenguaje base (SQL) sigue siendo el mismo de Access, y es por esto que se
justifica su aprendizaje durante este curso, ya que posee una interfaz más
amigable para nosotros que no tenemos mayores conocimientos de bases de datos,
por lo que resulta como un “salto intermedio” al uso de SGBD mayores, con los
cuales nos encontraremos en el futuro.
no tiene casi semejanzas
ResponderEliminar