Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
minsculas) y est basado en el estndar SQL-92 que es el que rige para el lenguaje
SQL segn el ANSI (American National Standards Institute) y el ISO (International
Standards Organization), por el cual se guan todos los vendedores, haciendo ms
fcil la compatibilidad o la versatilidad entre los diferentes productos que se ofrecen
en el mercado porque como saben este no es el nico gestor de bases de datos.
El Transact-SQL est basado en el lenguaje SQL (Structured Query Language)
donde el Transact est referido a extensiones que se le han adicionado por parte de
cada fabricante en respuesta al usuario que exiga mejoras en el lenguaje, el cual fue
inmediatamente aceptado cuando apareci. Este Transact fue un esfuerzo de
Microsoft & Sybase que desarrollaron una extensin de muy alta calidad y que se
puede utilizar para proyectos de gran extensin en empresas con un gran flujo de
informacin.
Microsoft SQL
Server 2008
brinda
una
plataforma
para
la construccin y
Compresin de Datos
La compresin de datos reduce el espacio requerido para almacenar tablas e ndices
permitiendo un uso ms eficiente de la capacidad de almacenamiento. Existe la
posibilidad de la compresin por artculo o por pgina. La compresin por artculo
almacena todos los campos en un formato de ancho variable, la compresin por
pgina hace lo mismo pero se realiza entre los artculos de una misma pgina. Un
diccionario a nivel de pgina es usado para almacenar los valores comunes, adems
prefijos comunes de valores de columnas son almacenados solo una vez en la
pgina. Ambas formas de compresin pueden ser aplicadas a las tablas y a los
ndices.
Gobernador de Recursos
El Gobernador de Recursos les permite a los administradores el control y la
asignacin de recursos como Procesadores y Memoria a las aplicaciones de ms
alta prioridad.
Operador MERGE
HISTORIA.-
Los orgenes del SQL estn ligados a las de las bases de datos relacionales. En
1970 E. F. Codd propone el modelo relacional y asociado a ste un sub lenguaje de
acceso a los datos basado en el clculo de predicados. Basndose en estas ideas,
los laboratorios de IBM definen el lenguaje SEQUEL (Structured English QUEry
Language) que ms tarde sera ampliamente implementado por el sistema de gestin
de bases de datos (SGBD) experimental System R, desarrollado en 1977 tambin
por IBM. Sin embargo, fue Oracle quien lo introdujo por primera vez en 1979 en un
programa comercial. El SEQUEL terminara siendo el predecesor de SQL, siendo
ste una versin evolucionada del primero. El SQL pasa a ser el lenguaje por
excelencia de los diversos sistemas de gestin de bases de datos relacionales
surgidos en los aos siguientes y es por fin estandarizado en 1986 por el ANSI,
dando lugar a la primera versin estndar de este lenguaje, el "SQL-86" o "SQL1". Al
ao siguiente este estndar es tambin adoptado por la ISO. Sin embargo, este
primer estndar no cubre todas las necesidades de los desarrolladores e incluye
funcionalidades de definicin de almacenamiento que se consideraron suprimir. As
que en 1992 se lanza un nuevo estndar ampliado y revisado del SQL llamado "SQL92" o "SQL2".En la actualidad el SQL es el estndar de facto de la inmensa mayora
de los SGBD comerciales. Y, aunque la diversidad de aadidos particulares que
incluyen las distintas implementaciones comerciales del lenguaje es amplia, el
soporte al estndar SQL-92 es general y muy amplio.
El ANSI SQL sufri varias revisiones y agregados a lo largo del tiempo:
Historia de versiones
Versin
Ao
Nombre de la versin
Nombre clave
1.0
1989
SQL
1993
SEQUEL
6.0
1995
SQL95
6.5
1996
Hydra
7.0
1998
Sphinx
1999
8.0
2000
8.0
2003
9.0
2005
Yukon
10.0
2008
Katmai
10.5
2010
Kilimanjaro
(OS/2)
4.21
(WinNT)
SQL
Server
7.0
OLAP Tools
SQL Server 2000
SQL
Server
64-bit Edition
Plato
Shiloh
2000
Liberty
Tanto Oracle como SQL Server utilizan cifrado de datos para proteger la informacin.
SQL Server 2008 incorpora la tecnologa TDE (Transparent Data Encryption) y
Oracle ofrece una modalidad de TDE mediante la definicin de una clave maestra y
un almacn de claves personales (elwallet). En Oracle el uso de TDE se declara
en las definiciones de tabla y se establece a nivel de columna.
En SQL Server 2008, TDE se encarga de cifrar los datos, logs y archivos de backup
de toda la base de datos. Con ello se impide que un intruso pueda acceder a los
archivos de la base de datos y simplemente los abra con otra instancia de SQL
Server. Los archivos se encriptan por medio de un certificado y el acceso a la base
de datos solo se puede hacer utilizando dicho certificado.
Los datos dentro de la cache de SQL Server generalmente estn en texto plano, pero
en el disco se almacenan encriptados.
Una vez activada la TDE, toda la base de datos y el log se encriptan, una operacin
que llevan a cabo ciertos procesos en background, y las pginas se encriptan en el
momento en que van o vienen desde el disco. EL impacto que este mtodo tiene
sobre el rendimiento depende de los patrones de acceso a que est sometida la base
de datos. La base de datos tempdb estar encriptada si cualquiera de las bases de
datos de la instancia lo est, por lo que el rendimiento general del sistema puede
verse afectado en la medida en que tempdb es un recurso comn a todas ellas.
Cuentas de usuario
Tanto Oracle como SQL Server utilizan el concepto de cuenta de usuario para que
los usuarios autorizados puedan conectarse a la base de datos. En Oracle recibe el
nombre de usuario o username. En SQL Server se le llama login ID o
simplemente login. Cualquier operacin que realice un usuario est regida por los
privilegios asignados a su cuenta.
Los usuarios de SQL Server pueden tambin clasificarse en tres categoras, como en
Oracle:
Los requisitos de cuenta y privilegios de cada uno de estos tres tipos son distintos.
En el caso de los administradores de una instancia, el login es suficiente, pero los
administradores de las bases de datos necesitan disponer de cuentas en dichas
bases de datos.
Los propietarios de objetos de base de datos en SQL Server necesitan un login para
el servidor y una cuenta de usuario en cada una de las bases de datos donde tengan
que crear objetos. Igualmente, los usuarios de aplicaciones necesitan un login para el
servidor y una cuenta de usuario en las bases de datos a las que acceden.
Hay un usuario especial, llamado dbo con perfil de propietario de base de datos
presente en todas las bases de datos de SQL Server y dispone de los privilegios
necesarios para realizar cualquier actividad dentro de ellas. Un login administrativo
con el rol sysadmin se mapea directamente en todas las bases de datos con el
usuario dbo. Es ms o menos lo mismo que cuando un usuario se conecta a una
base de datos identificndose como SYSDBA o SYSOPER, que se conecta
automticamente como SYS. Los logins de SQL Server pueden mapearse tambin
contra el usuario dbo en una base de datos, con lo que adquieren privilegios de
administrador en dicha base de datos.
Autenticacin
Kerberos
RADIUS
SSL
Entrust/PKI
SQL Server puede utilizar el protocolo SSL para encriptar todos los datos
transmitidos entre el sistema cliente donde se ejecuta la aplicacin y una instancia de
SQL Server dentro de un sistema servidor. El cifrado mediante SSL se efecta dentro
de la librera de red del cliente nativo de SQL Server y se aplica a todos los
protocolos de comunicacin entre sistemas soportados por SQL Server.
Aparte esto, el propio sistema operativo Windows soporta el protocolo IPSec (Internet
Protocol Security) y se configura a nivel del sistema operativo, no en SQL Server. Los
tres mtodos de autenticacin basados en estndares IETF utilizados para
establecer la seguridad en las comunicaciones entre sistemas son los siguientes.
Todos los tipos de cifrado estn soportados en Windows:
Passwords
Cifrado de la password.
de
autenticacin
de
SQL
Server
adems
utiliza
el
API
Las opciones disponibles para reforzar los logins de SQL Server son:
CHECK_POLICY
CHECK_EXPIRATION
MUST_CHANGE
Roles
SQL Server 2000 utiliza cuatro tipos de roles:
Fixed Server Roles
Fixed Database Roles
Server Roles
Server Role
Sysadmin
Serveradmin
Descripcin
Puede llevar a cabo cualquier tarea
Puede realizar cambios en los seteos del servidor, incluso
Setupadmin
apagarlo
Configuracin de servidores vinculados
Securityadmin
Processadmin
Dbcreator
Diskadmin
Bulkadmin
passwords
Manejo de procesos en ejecucin
Crear, modificar y eliminar bases
Administrador de discos
Puede ejecutar tareas de Bulk Insert
Database Roles
Database Role
Db_owner
Db_accessadmin
Db_securityadmin
Db_ddladmin
Descripcin
Puede llevar a cabo cualquier tarea
Puede agregar o remover IDs
Maneje permisos, ownership y roles
Todo lo que sea DDL menos GRANT, REVOKE y DENY.
Db_backupoperator
Db_datareader
Db_datawriter
Db_denydatareader
Db_denydatawriter
VENTAJAS Y DESVENTAJAS.-
Ventajas
Soporte de transacciones.
Inteligencia de negocio *
Desventajas
MSSQL
usa
Address
Windowing
Extensin
(AWE)
para
hacer
el
COSTO (LICENCIA).-
Ediciones
Licencias
Software
Assuranc
e
Licencias
Software
Assurance
Usuario /
Dispositivo
de CAL
SQL Server
Datacenter*
SQL Server
Enterprise
SQL Server Standard
$54,990.00
NA
NA
$8,592.00
SQL CAL
SQL Server
Workgroup
NA
$3,743.00
$13,748.
00
$6,874.0
0
$1,793.0
0
NA
$936.00
NA
NA
NA
NA
$3,500.00 (or $876.00
$15 per
month in
SPLA)
NA
NA
Descarga Gratuita
$27,495.00
$7,171.00
Descarga Gratuita
Descarga Gratuita
Herramientas de
desarrollo de
licencia
NA
Usuario /
dispositivo de
Software
Assurance
NA
$2,148.00
NA
NA
NA
$898.00
$224.00
NA
NA
NA
NA
$730.00
(includes 5
Workgroup
CALs)
NA
NA
NA
NA
$182.00
(includes 5
Workgrou
p CALs)
NA
NA
NA
$164.00
NA
$41.00
NA
NA
NA
$148.00
$164.00
NA
$37.00
$82.00
NA
NA
NA
NA
NA
NA
NA
NA
$37.00
NA
SQL server incluye una versin reducida, llamada MSDE con el mismo motor
de base de datos pero orientado a proyectos ms pequeos, que en sus versiones
2005 y 2008 pasa a ser el SQL Express Edition, que se distribuye en forma gratuita.
Es
comn
desarrollar
completos
proyectos
complementando Microsoft
SQL
Server y Microsoft Access a travs de los llamados ADP (Access Data Project). De
esta forma se completa la base de datos (Microsoft SQL Server), con el entorno de
desarrollo (VBA Access), a travs de la implementacin de aplicaciones de dos
capas mediante el uso de formularios Windows.
En el manejo de SQL mediante lneas de comando se utiliza el SQLCMD
Para el desarrollo de aplicaciones ms complejas (tres o ms capas), Microsoft SQL
Server incluye interfaces de acceso para varias plataformas de desarrollo, entre
ellas .NET, pero el servidor slo est disponible para Sistemas Operativos Windows.
SQL Server Management Studio proporciona plantillas para los proyectos de scripts
de SQL Server, los proyectos de Analysis Services y los proyectos de SQL Server
Compact 3.5 SP1. Cada tipo de proyecto contiene configuraciones adecuadas para
cada entorno, como scripts Transact-SQL para proyectos de SQL Server, scripts
MDX, DMX y XMLA para proyectos de Analysis Services y Transact-SQL para
proyectos de SQL Server Compact 3.5 SP1.