Está en la página 1de 22

Gua rpida SQL Server 2000

Divisin Empresas

Unidad 1: Panorama General de SQL Server


Qu es SQL Server?
SQL se utiliza para manipular dos tipos de bases de datos: bases de datos con
procesamiento de transacciones en lnea (OLTP) y bases de datos con
procesamiento analtico en lnea (OLAP). Tpicamente, el acceso a las bases de
datos lo realizan clientes separados a travs de una red de computadoras.

Introduccin a SQL Server


Se puede utilizar SQL Server para realizar procesos de transacciones,
almacenar, analizar datos y crear nuevas aplicaciones.
SQL Server es una familia de productos y tecnologas que cubre los
requerimientos de almacenamiento de ambientes OLTP y OLAP. SQL Server es
un sistema administrador de bases de datos relacionales (RDBMS) que:

Administra el almacenamiento de datos para su transaccin y anlisis.


Responde a los requerimientos de aplicaciones de clientes.
Utiliza los lenguajes Transact SQL, Extensible Markup Language (XML),
multidimensional expressions (MDX), o Distributed Management Objects
(SQL-DMO) para el envo de requerimientos entre el cliente y SQL
Server.

Nota: Este curso se enfoca en actividades asociadas con bases de datos OLTP y
Transact-SQL.
Sistema administrador de bases de datos relacionales (RDBMS)
El RDBMS de SQL Server es responsable de:

Mantener relaciones entre los datos en una base de datos.


Asegurar el correcto almacenamiento de los datos y que las reglas
definidas para las relaciones entre datos no sean violadas.
Recuperar datos a un punto de consistencia conocida, en el caso de que
el sistema falle.

Unidad 1

-1-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Modelos de almacenamiento de datos.


SQL Server administra bases de datos OLTP y OLAP.
Bases de datos OLTP. Los datos en una base de datos OLTP estn
generalmente organizados en tablas relacionales para reducir la informacin
redundante y aumentar la velocidad de actualizacin de datos. SQL Server
permite que varios usuarios realicen transacciones y hagan cambios en los
datos en tiempo real simultneamente en bases de datos OLTP. Ejemplos de
este tipo de bases de datos son los sistemas de transacciones bancarias y los
sistemas de emisin de reservaciones y boletos de avin.
Bases de datos OLAP. La tecnologa OLAP organiza y resume largas
cantidades de datos con el fin de que los analistas puedan evaluarlos
rpidamente en tiempo real. SQL Server 2000 y sus servicios de anlisis
organizan estos datos para dar soporte a un amplio panorama de soluciones
innovadoras, desde la creacin de reportes corporativos y su anlisis, hasta el
soporte y modelado para la toma de decisiones.
Aplicaciones de cliente
Los usuarios acceden a SQL Server y a sus servicios de anlisis a travs de
aplicaciones de cliente escritas de forma separada, estas aplicaciones acceden
a SQL utilizando:
Transact-SQL. Este lenguaje de consulta, es una versin de lenguaje de
consulta estructurado (SQL), es el principal lenguaje que consulta y programa
bases de datos que utilizan los usuarios de SQL.
XML. Este formato retorna datos de consultas y procedimientos almacenados
utilizando URLs o plantillas con el protocolo de transferencia de hipertexto
(HTTP). Tambin puede utilizar XML para insertar, eliminar y actualizar valores
en una base de datos.
MDX. La sintaxis MDX define objetos multidimensionales y consultas que
manipulan datos multidimensionales en base de datos OLAP.
OLE DB y ODBC APIs. Los clientes de aplicaciones utilizan OLE DB y abren la
conectividad de bases de datos (ODBC), programando interfases de aplicacin
(APIs) para enviar comandos a una base de datos. Comandos que usted puede
enviar a travs de APIs utilizando el lenguaje Transact-SQL.

Unidad 1

-2-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

ActiveX Data Objects y ActiveX Data Object (Multidimensional)


Microsoft ActiveX Data Objects (ADO) y ActiveX Data Objects
(Multidimensional) (ADO MD) cubre OLE DB para utilizar en lenguajes como
Microsoft Visual Basic, Visual Basic para aplicaciones, Active Server Page, y
Microsoft Internet Explorer Visual Basic Scripting. Puede utilizar ADO para
acceder a datos en bases de datos OLTP. Puede utilizar ADO MD para acceder a
datos en Servicios de Anlisis de datos.
English Query. Esta aplicacin proporciona una API automtica que permite a
los usuarios utilizar el lenguaje natural, para hacer preguntas o escribir
sentencias complejas en Transact-SQL o sentencias MDX de informacin en una
base de datos. Por ejemplo, los usuarios pueden preguntar, Cul es el total
de ventas de la regin 5?.

Componentes Cliente-Servidor
La arquitectura cliente-servidor
SQL Server utiliza arquitectura cliente-servidor para separar las cargas de
trabajo en tareas que se puedan ejecutar en computadoras servidor y tareas
que se puedan ejecutar en computadoras cliente:
El cliente es responsable de la lgica de trabajo y la representacin de
datos para el usuario. El cliente, tpicamente se ejecuta en una o ms
computadoras, pero tambin se puede ejecutar en la computadora
servidor junto con SQL Server.
SQL Server administra las bases de datos y localiza recursos disponibles
de servidor, tales como memoria, ancho de banda de redes y
operaciones de disco entre otros requerimientos.
Nota: En este curso, el trmino cliente por s mismo se refiere a una aplicacin
del cliente.
Componentes del cliente
Los componentes de cliente en la arquitectura de comunicacin incluyen:
Aplicacin cliente. Una aplicacin cliente finaliza sentencias Transact-SQL y
recibe resultados.
Bases de datos API. Las bases de datos API (OLE, DB, ODBC) utilizan un
proveedor, driver o DLL para enviar las sentencias de Transact SQL y recibir
los juegos de resultados. Es en general una interfase que la aplicacin usa para
enviar las solicitudes a SQL Server, procesar los resultados y enviarlos de
regreso.
Client Net-Library. Client-Net library administra las conexiones de red y el
enrutamiento para clientes. Este es un componente del software de
comunicacin que empaqueta las consultas a la base de datos y los resultados
para la transmisin con un protocolo de red apropiado.

Unidad 1

-3-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Componentes de servidor
Los componentes de servidor en la arquitectura de comunicacin incluyen:
Server Net-Libraries. SQL Server puede monitorear mltiples Net Libraries
concurrentemente. Client Net-Library debe coincidir correctamente con alguna
de las Server Net-Libraries para establecer la comunicacin exitosamente. SQL
Server soporta protocolos de red tales como TCP/IP, Named Pipes, NWLink,
IPX/SPX, etc.
Open Data Services. Open Data Services logra que los servicios de SQL Server
de procesamiento de datos se muestren al cliente de forma transparente,
proveyendo interfaces de trabajo en red. Este es un componente de SQL que
administra conexiones de redes, enva solicitudes del cliente a SQL Server para
su procesamiento y el regreso de resultados y rplicas a los clientes.
Relational Engine. La mquina relacional analiza sentencias SQL, optimiza y
ejecuta planes, procedimientos de definicin de lenguaje de datos (DDL) y
otras sentencias, refuerza la seguridad.
Storage Engine. La mquina de almacenamiento administra archivos y el
correcto uso del espacio en ellos, crea y escribe datos, administra los buffer de
datos y la entrada/salida fsica, controla la concurrencia, realiza operaciones
de inicio de sesin y operaciones de recuperacin, implementa funciones de
chequeo de consistencias, respaldo y recuperacin.

El proceso de comunicacin cliente-servidor


El siguiente procedimiento utiliza una consulta para ilustrar una comunicacin
tpica cliente-servidor:
1. Una aplicacin cliente enva una consulta. El cliente llama a la API de la
base de datos y pasa la consulta.
2. El cliente Net-Library llama a un proceso de comunicacin Windows
(IPC) para enviar un paquete de protocolo de red a un servidor NetLibrary utilizando la pila del protocolo de red del sistema operativo. El
apropiado servidor Net-Library extrae los paquetes TDS de los paquetes
de protocolo de red y pasa los paquetes TDS para abrir los servicios de
datos.
3. Open Data Services extrae la consulta de los paquetes y la pasa a la
mquina relacional. La mquina relacional compila la consulta en un plan
de ejecucin optimizado y lo ejecutan la mquina relacional con la
mquina de almacenamiento utilizando interfaces OLE DB:
4. La mquina de almacenamiento transfiere los datos que satisfacen la
consulta desde la base de datos hacia el buffer de salida y despus hacia
la mquina relacional. La maquina relacional combina las filas de
resultados para obtener el juego de resultados final y lo pasa a Open
Data Services.

Unidad 1

-4-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

5. Open Data Services empaqueta el juego de resultados y lo regresa a la


aplicacin Cliente utilizando Server Net-Library, el protocolo de red
ptimo, client Net-Library, y la API de la base datos. El resultado puede
ser obtenido en formato XML.

Servicios de SQL Server


SQL incluye cuatro servicios, los cuales son instalados en forma
predeterminada con cada nueva instalacin: MSSQL Server Service, SQL Server
Agent Service, Microsoft Distributed Transaction Coordinator y Microsoft
Search.
MSSQL Server Service
MSSQL Server Service es el motor de base de datos. Es el componente que
procesa todas las sentencias Transact SQL y administra los archivos que
contienen las bases de datos en el servidor.
Localiza los recursos del sistema.
Previene problemas de lgica tales como tiempos de respuesta entre
usuarios que quieren actualizar los mismos datos al mismo tiempo.
Asegura la consistencia e integridad.
SQLServerAgent Service
SQLServerAgent Service trabaja en conjunto con SQL Server para crear y
administrar alertas o tareas multiservicios y operadores. Considere lo siguiente
acerca de SQL Server Agent Service:

Las alertas proporcionan informacin acerca del status de los procesos,


como y cuando se completa una tarea o cuando ocurre un error.
SQL Server Agent Service incluye la creacin de tareas y una mquina
que planea qu tareas se realizarn automticamente.
SQL Server Agent Service puede enviar mensajes de correo electrnico,
o iniciar otra aplicacin cuando ocurre una alerta. Por ejemplo, puede
configurar una alerta que se activar cuando una base de datos o registro
de transaccin est casi lleno o cuando se ha completado un respaldo de
base de datos.

Microsoft Distributed Transaction Coordinator


MS DTC permite a los clientes incluir diferentes fuentes de datos en una misma
transaccin, as como la completa y permanente actualizacin de stas.
Microsft Search
Microsoft Search es una mquina de texto completo que se ejecuta como un
servicio de Windows. Incluye soporte completo de escritura de texto para la
creacin de consultas.

Unidad 1

-5-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Instancias mltiples de SQL Server


Mltiples instancias de SQL Server pueden ejecutarse simultneamente en la
misma computadora.
Cada instancia opera como si se estuviera ejecutndose en un servidor
separado. Cuando se especifica el nombre de la computadora en la que se
trabaja, usted estar trabajando con la instancia predeterminada. Es necesario
especificar el parmetro equipo _ nombre/instancia_nombre para conectarse a
una determinada instancia.

Integracin SQL Server


SQL Server incluye componentes cliente-servidor que pueden ser integrados
con varios Sistemas operativos Microsoft, incluyendo Windows y otros
servidores de aplicaciones Microsoft.

Integrando SQL Server con los sistemas operativos


Componentes Cliente
Los componentes Cliente de todas las ediciones de SQL Server 2000, excepto
SQL Server Windows CE Edition, corren en todas las ediciones de Windows.
Componentes Servidor.
Varias ediciones de SQL Server permiten ejecutarse en todas las ediciones de
Windows, Windows NT 4.0 Terminal Server no permite ejecutar SQL Server
2000.
Navegadores de Internet y aplicaciones cliente de terceros
Navegadores de Internet y aplicaciones cliente de terceros ejecutndose en
varios sistemas operativos, tambin pueden acceder a SQL Server.

Integrando SQL Server con Windows


SQL Server esta totalmente integrado con Windows
muchas de sus caractersticas.

tomando ventaja de

Active Directory. Los servidores y sus atributos son registrados


automticamente en el Microsoft Active Directory al iniciarse el servidor, por
medio del cul, los usuarios pueden localizar servidores especficos SQL
Server.
Seguridad. SQL Server est integrado al sistema de seguridad de Windows.
Esta integracin permite al usuario acceder a SQL Server y Windows con su
cuenta y contrasea de usuario. Se incluyen caractersticas de encriptacin y
seguridad de red, incluyendo soporte Kerberos. SQL provee seguridad propia
para clientes que necesitan acceder a SQL Server sin autenticacin de
Windows.

Unidad 1

-6-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Soporte multiprocesamiento. SQL Server soporta las capacidades de


multiprocesamiento simtrico de Windows. SQL Server automticamente toma
ventaja de cualquier procesador adicional que sea instalado en la computadora
Servidor.
Microsoft Event Viewer. SQL Server escribe mensajes en los registros de
seguridad y eventos de las aplicaciones de Windows, proveyendo un
mecanismo consistente de visualizacin y rastreo de problemas.
Windows Server System Monitor. SQL Server enva parmetros de
desempeo a Windows Server System Monitor, habilitando el monitoreo del
desempeo de SQL Server en el sistema.
Microsoft Internet Information Services. SQL Server utiliza Microsoft Internet
Information Services (IIS) con el fin de que los navegadores de Internet puedan
acceder a las bases de datos de SQL Server utilizando el protocolo HTTP.
Windows Clustering. Es un componente de Windows Advanced Server que
soporta la conexin de dos servidores o nodos, en conjunto para mejorar la
disponibilidad y maniobrabilidad de los datos y las aplicaciones.

Integrando SQL Server con otras aplicaciones Microsoft Server


La siguiente tabla enlista algunas aplicaciones comnmente usadas que
funcionan bien o utilizan SQL Server.
Aplicacin Server
Descripcin
Microsoft Windows
Server with Provee conectividad rpida y segura
Solution Accelerator (SA) for the a Internet, incluye Firewall y cach
Internet Store Front
Web de alto desempeo.
Microsoft Exchange Server
Permite a SQL Server enviar
mensajes de correo electrnico
utilizando Exchange Server o
cualquier
otra
aplicacin
de
mensajera.
Microsoft Host Integration Server Vincula ambientes IBM ejecutando el
protocolo
del
sistema
de
2000
arquitectura de red (SNA).
Microsoft Systems Manager Server
Administra software, hardware e
inventarios y utiliza SQL para
almacenar las bases de datos.

Unidad 1

-7-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Bases de datos de SQL Server


Tipos de bases de datos
Cada SQL Server tiene dos tipos de bases de datos: Base de datos del sistema y
base de datos de usuario. Las bases de datos de sistema almacenan informacin
sobre SQL Server como un todo. SQL Server utiliza bases de datos de sistema
para operar y administrar el sistema. Una base de datos de usuario es, una base
de datos que el usuario crea.
Cuando SQL Server es instalado, SQL Server Setup crea las bases de datos del
sistema y bases de datos de ejemplo. La base de datos de distribucin es
instalada cuando se configura SQL Server para actividades de replicacin. La
siguiente tabla describe la aplicacin de cada base de datos.
Base de datos
Master

Model
Tempdb

Msdb
Distribution
Pubs
Northwind
User1

Unidad 1

Descripcin
Controla las bases de datos de
usuarios y la operacin de SQL
Server como un todo, llevando un
registro de la informacin como lo
son las cuentas de usuario, variables
de
ambiente
configurables
y
mensajes de error del sistema.
Provee una plantilla o prototipo para
nuevas bases de datos.
Provee un rea de almacenamiento
para tablas temporales y otras
necesidades de almacenamiento
temporal de trabajo.
Provee un rea de almacenamiento
para informacin de actividades e
historial.
Almacena datos de historial y
transacciones
utilizados
en
replicacin.
Base de datos de muestra como
herramienta de aprendizaje.
Base de datos de muestra como
herramienta de aprendizaje.
Identifica una base de datos definida
por un usuario.

-8-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Objetos de base de datos


Una base de datos es una coleccin de datos, tablas y otros objetos. Los
objetos de la base de datos ayudan a estructurar los datos y a definir los
mecanismos de integridad. La siguiente tabla describe los objetos de una base
de datos de SQL Server.
Objeto de base de datos
Table
Data type

Constraint
Default
Rule
Index
View
User-defined function

Stored procedure
Trigger

Unidad 1

Descripcin
Define a una coleccin de filas que tienen
columnas asociadas.
Define los valores permitidos para los datos en
una columna o variable.
SQL Server provee algunos tipos de datos
definidos por el sistema. Pueden crearse tipos
de datos definidos por el usuario.
Define reglas sobre los valores permitidos en
las columnas y es el mecanismo estndar que
asegura la integridad de datos.
Define el valor que es almacenado en la
columna si ningn otro valor es suministrado.
Contiene informacin que define los valores
vlidos que pueden ser almacenados en una
columna o tipo de dato.
Es una estructura de almacenamiento que
provee rpido acceso a la informacin para su
recuperacin y asegura la integridad.
Provee una forma de visualizar datos de una o
ms tablas o vistas en una base de datos.
Puede regresar ya sea un valor escalar o una
tabla. Las funciones son utilizadas para
encapsular
en
cdigo
una
lgica
frecuentemente empleada.
Es una coleccin definida de sentencias de
Transact SQL precompiladas que se ejecutan
juntas.
Es una forma especial de procedimiento
almacenado que se ejecuta automticamente
cuando el usuario modifica datos en una tabla o
vista.

-9-

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Haciendo referencia a Objetos de SQL Server


Es posible hacer referencia a objetos de SQL Server de muchas formas. Puede
especificar el nombre completo del objeto (nombres calificados por completo),
o especificar slo una parte del nombre del objeto y permitir a SQL Server
determinar el resto del nombre desde el contexto en el cual esta trabajando.
Nombres completos calificados
El nombre completo de un objeto de SQL Server incluye cuatro identificadores:
el nombre del servidor, nombre de la base de datos, nombre del propietario y
nombre del objeto en el siguiente formato:
Servidor.database.propietario.objeto
Un nombre de objeto que especifica las cuatro partes es conocido como
Nombre completo calificado. Cada objeto que usted crea en SQL Server debe
ser nico. Por ejemplo, puede tener dos tablas Orders en la misma base de
datos mientras que stas pertenezcan a diferentes propietarios. Tambin, los
nombres de columnas deben ser nicos en una tabla o vista.
Nombres parciales especificados
Cuando se hace referencia a un objeto, no siempre es necesario que
especifique el servidor, la base de datos y el propietario. Estos identificadores
intermedios pueden ser omitidos, siempre y cuando sus posiciones sean
indicadas peridicamente.
La siguiente lista contiene formatos validos para nombres de objetos:
Servidor.base de datos.propietario.objeto
base de datos.propietario.objeto
base de datos.objeto
propietario.objeto
objeto
Cuando no se especifican las diferentes partes del nombre, SQL Server utiliza
los siguientes valores predeterminados:

El servidor predeterminado para la instancia actual en el servidor local.


La base de datos predeterminada para la base de datos actual.
El propietario predeterminado para el nombre de usuario en la base de
datos especfica asociada con el inicio de sesin de la conexin actual.

Unidad 1

- 10 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Ejemplo
El siguiente ejemplo crea la tabla OrderHistory en la base de datos Northwind.
CREATE TABLE Northwind.dbo.OrderHistory
(OrderID int,
ProductID int,
UnitPrice money,
Quantity int,
Discount decimal)
La mayora de las referencias a objetos utilizan nombres de tres partes, y de
forma predeterminada el servidor local. Los nombres con cuatro partes son
generalmente utilizados para consultas distribuidas o llamadas a
procedimientos almacenados remotos.

Tablas del sistema


SQL Server almacena cierta informacin, llamada Metadato, sobre el sistema y
los objetos en las bases de datos para una instancia de SQL Server. Los
Metadatos son informacin sobre los datos.
Los Metadatos incluyen informacin sobre las propiedades de los datos, tales
con el tipo de datos en una columna (numeric, text, etc), o el tamao de la
columna. Puede tambin ser informacin sobre la estructura del dato o
informacin que especifique el diseo de los objetos.
Tablas del sistema. La informacin sobre los datos en las tablas del sistema
incluye informacin sobre la configuracin y la definicin de todas las bases de
datos y los objetos de la base de datos en una instancia de SQL Server. Los
usuarios no debern modificar directamente ninguna de las tablas de sistema.
Catlogo de bases de datos. Cada base de datos (incluyendo a master),
contiene una coleccin de tablas de sistemas que almacenan metadatos sobre
esa base de datos especfica. Esta coleccin de tablas de sistema es el catlogo
de base de datos el cual contiene la definicin de todos los objetos de la base
de datos y los permisos establecidos.
Catlogo del sistema. El catlogo del sistema, que se encuentra slo en la
base de datos master, es una coleccin de tablas de sistema que almacena
metadatos sobre el sistema completo y todas las dems bases de datos.

Unidad 1

- 11 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

La mayora de las tablas de sistema comienzan con el prefijo sys. La siguiente


tabla identifica algunas tablas de sistema frecuentemente utilizadas:
Tabla de sistema
Syslogins

Base de datos
Master

Sysmessages

Master

Sysdatabases

Master

Sysusers

All

Sysobjects

All

Funcin
Contiene una fila por cada cuenta de
inicio de sesin que se puede
conectar a SQL Server.
Contiene una fila por cada error del
sistema o alerta que SQL pueda
regresar.
Contiene una fila por cada base de
datos en SQL Server.
Contiene una fila por cada usuario de
Windows Server o grupo de Windows
Server.
Contiene una fila por cada objeto en
una base de datos.

Recuperacin de metadatos
Cuando escribe aplicaciones que recuperan metadatos de tablas de sistema,
deber utilizar procedimientos almacenados de sistema o funciones de sistema.
Cuidado: no altere directamente las tablas de sistema. Cambiar una tabla de
sistema har imposible que SQL Server se recupere adecuadamente de una
cada en el sistema.
Procedimientos almacenados de sistema
Para hacer ms fcil el procedimiento de obtencin de informacin sobre el
estado del servidor y los objetos de la base de datos. SQL Server provee una
coleccin de consultas preescritas llamadas Procedimientos almacenados de
sistema.
Los nombres de la mayora de los procedimientos almacenados comienzan con
el prefijo sp_. La siguiente tabla describe tres de estos procedimientos
comnmente usados.
Procedimiento almacenado Descripcin
de sistema
Sp_help [object_name]
Provee informacin de un objeto de la base
de datos especificado.
Sp_helpdb [database_name]
Provee informacin de la base de datos
especificada.
Sp_helpindex[table_name]
Provee informacin sobre el ndice de la
tabla especificada.
Unidad 1

- 12 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Ejemplo
El siguiente ejemplo ejecuta un procedimiento almacenado de sistema que
obtiene informacin de la tabla Employees.
Para ejecutar un procedimiento almacenado anteponga el comando EXEC.
EXEC sp_help Employees
Funciones de sistema y metadatos
Estas proveen un mtodo para consultar tablas de sistema desde una sentencia
Transact-SQL. La siguiente tabla describe las funciones de sistema comnmente
usadas y la informacin correspondiente que regresan.
Funcin
de Parmetro
sistema
suministrado
DB_ID
Nombre
USER_NAME
ID
COL_LENGTH
Column
STATS_DATE
Index
DATALENGTH

Data type

Resultado
Regresa la ID de la base de datos
Regresa el nombre de usuario
Regresa el ancho de columna
Regresa la fecha en la cual las
estadsticas
para
el
ndice
especificado fueron actualizadas
Regresa la longitud actual de una
expresin de cualquier tipo de dato

Ejemplo 1
El siguiente ejemplo utiliza una funcin de sistema en una consulta que
recupera el nombre de usuario para el usuario con ID = 10.
Para ejecutar una funcin de sistema, anteponga en comando SELECT.
SELECT USER_NAME(10)
Vista Esquema de informacin
Una Vista - Esquema de informacin contiene metadatos de todos los objetos de
datos almacenados en una base de datos en particular. La siguiente tabla
describe las Vistas-Esquema de informacin comnmente utilizadas.
Vista Esquema de informacin

Descripcin

INFORMATION_SCHEMA.TABLES

Muestra las tablas de la base


de datos
INFORMATION_SCHEMA.COLUMNS
Informacin de las columnas
definidas en la base de datos
INFORMATION_SCHEMA.TABLES_PRIVILEGES Informacin de seguridad para
las tablas en la base de datos.

Unidad 1

- 13 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Ejemplo 2
El siguiente ejemplo utiliza una Vista Esquema de informacin para recuperar
una lista de todas las tablas en una base de datos.
Anteponga el comando SELECT * FROM para utilizar Vista Esquema de
informacin.
SELECT * FROM INFORMATION_SCHEMA.TABLES

Seguridad en SQL Server


Autenticacin de inicio de sesin
Es indispensable que el usuario tenga una cuenta de usuario para conectarse a
SQL Server. SQL Server reconoce dos mecanismos de autenticacin: La
autenticacin de Windows y la autenticacin de SQL Server. Cada uno de ellos
tiene un tipo de cuenta de inicio de sesin diferente.
Autenticacin de Windows
Cuando se utiliza la autenticacin de Windows, es una cuenta de Windows
Server la que permite acceder al SQL Server. El usuario no provee una cuenta
de inicio de sesin de SQL Server cuando se conecta. El administrador de SQL
Server deber definir si el inicio de sesin ser vlido por medio de una cuenta
de Windows Server o por medio de una cuenta de SQL Server.
Autenticacin de SQL Server
Cuando se utiliza la autenticacin de SQL Server, el Administrador de SQL
Server definir un nombre y contrasea para la cuenta de inicio de sesin. Este
nombre y contrasea debern ser suministrados para conectarse a SQL Server.
Modo de autenticacin
Cuando se ejecuta SQL Server en Windows Server, el administrador del sistema
puede especificar uno de los dos tipos de autenticacin siguientes:
Modo de autenticacin Windows. Slo la autenticacin de Windows es
permitida, el usuario no puede especificar una cuenta de inicio de sesin de
SQL Server.
Modo mixto. Los usuarios pueden conectarse a SQL Server con Autenticacin
de Windows o autenticacin de SQL Server.

Unidad 1

- 14 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Cuentas de usuario y roles en bases de datos


Despus de que los usuarios han sido identificados por Windows o SQL Server
y se les ha permitido iniciar sesin en SQL Server, stos tendrn una cuenta de
usuario en la base de datos. Las cuentas de usuario y los roles identifican al
usuario dentro de la base de datos, controlan la propiedad de los objetos y
permisos para ejecutar sentencias.
Base de datos de cuentas de usuarios
Las cuentas de usuario que aplican permisos de seguridad son usuarios de o
grupos de Windows o cuentas de inicio de sesin de SQL Server. Las cuentas
de usuario son especificadas a una base de datos.
Roles
Los roles le permiten acomodar a los usuarios en una unidad independiente a la
cul le pueda aplicar permisos. SQL Server provee roles predefinidos de
servidor y bases de datos para funciones comunes de administracin, con los
cules podr otorgar de forma fcil una seleccin de permisos administrativos
para un usuario en particular.

Tipos de roles
SQL Server permite tres tipos de roles para ayudar a administrar permisos: rol
establecido de servidor, rol establecido de bases de datos y roles de bases de
datos definidos por el usuario.
Rol establecido de servidor
Este tipo de rol provee grupos de privilegios administrativos a nivel de
servidor. Son manejados independientemente de las bases de datos de usuario
a nivel de servidor. La siguiente tabla describe los roles establecidos de
servidor en SQL Server 2000.
Rol
Creador de base de datos
(dbcreator)
Administradores
de
disco(diskadmin)
Administradores
de
procesos/processadmin)
Administradores
de
seguridad
(securityadmin)
Administradores
de
servidor
(serveradmin)
Administradores
de
instalacin
(setupadmin)
Administradores
de
sistema(sysadmin)
Administradores
de
BULK
(bulkadmin)

Unidad 1

Permisos
Crear y alterar bases de datos
Administrar archivos de disco
Administrar procesos de SQL Server
Administracin y auditoria de inicios de sesin
Configuraciones avanzadas de servidor
Instalacin de replicacin
Realizar cualquier actividad
Ejecutar la sentencia BULK INSERT

- 15 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Rol establecido de base de datos


Estos roles proveen agrupaciones de privilegios administrativos a nivel de la
base de datos, la siguiente tabla describe algunos de estos roles.
Rol
Public
Db_owner
Db_accessadmin
Db_dbddladmin
Db_securityadmin
Db_backupoperator
Db_datareader
Db_datawriter
Db_denydatareader
Db_denydatawriter

Permisos
Mantiene todos los permisos predeterminados
para los usuarios de la base de datos
Realiza cualquier rol o actividad en la base de
datos
Agrega o elimina usuarios, grupo o roles de la
base de datos
Agrega, modifica o elimina objetos de la base de
datos
Asigna sentencias y permisos a objetos
Respalda bases de datos
Lee datos de cualquier tabla
Escribe, cambia o elimina datos en todas las
tablas
No puede leer datos de ninguna tabla
No puede cambiar datos de ninguna tabla

Roles de bases de datos definidos por el usuario


Es posible crear su propio grupo de roles que representen el trabajo realizado
por un grupo especfico de trabajadores en su organizacin, de esta manera no
tendr que delegar y revocar permisos persona por persona. Si la funcin de
un rol cambia, puede fcilmente cambiar los permisos de cada rol y aplicarlos
automticamente a cada miembro del grupo con ese rol.

Validacin de permisos
Dentro de cada base de datos, los permisos y los roles se asignan a cuentas de
usuario para realizar ciertas acciones. SQL Server acepta comandos despus de
que un usuario ha entrado con xito a la base de datos.
SQL Server realiza los siguientes pasos cuando est validando los permisos:
1. Cuando algn usuario realiza una accin, como la ejecucin de una
sentencia Transact SQL, el cliente enva la sentencia Transact SQL a SQL
Server.
2. Cuando SQL Server recibe la sentencia Transact SQL, revisa que el
usuario tenga permiso para ejecutar la sentencia.
3. SQL Server realiza una de dos opciones:
a. Si el usuario no tiene los permisos adecuados, SQL Server regresa
un error.
b. Si el usuario tiene los permisos adecuados, SQL Server realiza la
accin.

Unidad 1

- 16 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Trabajando con SQL Server


El trabajar con SQL Server involucra administrar e implementar bases de datos,
el desarrollo de una aplicacin o la seleccin de su arquitectura y su diseo
con SQL Server.

Administrando bases de datos de SQL Server


SQL Server provee utilidades grficas y de lnea de comandos para
administrarlo, as como ayuda para asistir al usuario.
Tareas administrativas comunes
Administrar una base de datos de SQL Server incluye:
Instalar, configurar y asegurar SQL Server
Crear bases de datos
Administrar y utilizar las bases de datos.
SQL Server Enterprise Manager (Administrador corporativo)
SQL Server Enterprise Manager es la consola de administracin de Microsoft
(MMC) para SQL Server, la cual es una interfase de usuario para la
administracin de las aplicaciones de servidor de Microsoft.
Herramientas administrativas y asistentes de SQL Server
SQL Server ofrece las siguientes herramientas administrativas y asistentes para
asistirlo en aspectos particulares de la administracin:
Herramienta grfica
Client Network Utility
SQL Server Network Utility
SQL Profiler
SQL Query Analyzer

SQL Server Service Manager


SQL Server Setup
SQL Server wizards

Unidad 1

Propsito
Utilidad para la administracin de las
configuraciones de cliente.
Utilidad
para
la
administracin
y
configuracin del servidor.
Utilidad para la captura y registro contino
de la actividad del servidor y capacidades
de auditoria.
Herramienta grfica para el anlisis de
consultas,
proporciona
informacin
estadstica y administra mltiples consultas
en ventanas deferentes de manera
simultnea.
Utilidad grfica para comenzar, detener y
pausar los servicios de SQL Server
Aplicacin para instalar y configurar SQL
Server
Coleccin de herramientas que guan a los
usuarios a travs de tareas complejas.

- 17 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Herramientas de la lnea de comandos de SQL Server


SQL Server ofrece las siguientes herramientas administrativas de lnea de
comandos que le permiten escribir Sentencias de Transact SQL y ejecutar
archivos de Scripts.
Utilidad
Osql

Bcp

Descripcin
Utilidad que usa Conectividad Abierta de Bases de Datos
(ODBC) para comunicarse con SQL Server. Siendo usado
en primer lugar, para ejecutar archivos por lotes que
contengan una o ms sentencias SQL.
Utilidad para la importacin y exportacin de datos de
archivos de usuario hacia y desde SQL Server.

La Ayuda de SQL Server y los libros en pantalla


SQL Server ofrece tres tipos de ayuda. La siguiente tabla describe cada uno de
los tipos.
Tipo de Ayuda
Herramientas de ayuda
Ayuda de Transact-SQL
Documentacin SQL Server

Descripcin
Las herramientas de SQL Server proporcionan
ayuda en la interfaz. Clic en el botn Ayuda o
en el comando del men Ayuda
Cuando Utiliza el Analizador de consultas,
seleccione el nombre de alguna sentencia y
presione SHIFT+F1.
Los libros en pantalla proporcionan acceso en
lnea a la documentacin de SQL Server.

Implementando una base de datos en SQL Server


Independientemente de la complejidad y el tamao de la base de datos,
implementarla generalmente involucra:

Disear la base de datos de tal forma que la aplicacin utilice el


hardware eficientemente y permita el crecimiento futuro. Identificar y
modelar los objetos de la base de datos y la lgica de la aplicacin,
especificar los tipos de informacin para cada objeto y el tipo de
relaciones.
Creando la base de datos, sus objetos, incluir tablas, mecanismos de
integridad de datos, objetos de suministro y salida de datos
(comnmente son procedimientos), ndices y seguridad apropiados.
Probar y afinar el funcionamiento de la aplicacin y de la base de datos,
asegurndose que las funciones importantes se realizan rpida y
correctamente.
Planear el despliegue que tendr la base de datos, esto incluye analizar
las cargas de trabajo recomendadas para una configuracin de trabajo
ptima de la base de datos en SQL Server.

Unidad 1

- 18 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Seleccionando una arquitectura de aplicaciones para SQL Server


Planear el diseo de una base de datos requiere del conocimiento de las
funciones del negocio que se quieren modelar as como tambin conocer los
conceptos y caractersticas de las bases de datos que deseen emplearse para
representar las funciones del negocio en la aplicacin de la base de datos.
Arquitectura de Software
Es posible utilizar una de varias de las arquitecturas para implementar
aplicaciones cliente/servidor. De cualquier forma, La arquitectura de aplicacin
en capas siempre ofrecer flexibilidad y una amplia gama de opciones de
administracin. Las aplicaciones de software pueden dividirse en tres capas
lgicas las cuales pueden residir fsicamente en uno o ms servidores.
Capa lgica
Presentacin

Negocios
Data

Descripcin
Incluye la lgica de presentacin de datos y
aplicaciones para los usuarios. Esta capa es
generalmente implementada en una computadora
cliente.
Incluye reglas de lgica y estatutos del negocio (capa
generalmente involucrada con SQL Server).
Incluye definiciones de la base de datos, lgica de
integridad de datos, procedimientos almacenados y
otras operaciones que estn cercanamente asociadas
con datos (capa generalmente involucrada con SQL
Server).

Diseo de la Arquitecturas
Las opciones tpicas de despliegue de aplicaciones incluyen:
Intelligent Server (2-Tier) La mayora del procesamiento ocurre en el servidor
mientras que el cliente maneja los servicios de presentacin.
Intelligent Client (2-Tier) La mayora del procesamiento ocurre en el cliente,
mientras que el servidor maneja los servicios de datos.
N-Tier El procesamiento es dividido entre el servidor de bases de datos, el
servidor de aplicaciones y el cliente.
Internet El procesamiento esta dividido en tres capas, con los servicios de
negocios y presentacin residiendo en el servidor Web y los clientes utilizando
navegadores de Internet. SQL Server puede soportar cualquier cliente que
tenga un navegador y no se requiere que el software sea mantenido en el
cliente.
Unidad 1

- 19 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Diseando aplicaciones utilizando APIs en bases de datos


Puede desarrollar aplicaciones de bases de datos que accedan a SQL Server
mediante una API (interfase de programa de aplicacin). Una API contiene dos
partes:

Sentencias de lenguaje Transact SQL enviadas a la base de datos.


Un conjunto de funciones o interfaces orientadas a objetos y mtodos
usados para enviar sentencias Transact SQL a la base de datos y procesar
los resultados regresados por la misma.

Unidad 1

- 20 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Prctica A: panorama general de SQL Server


Despus de completar esta prctica, ser capaz de ver el contenido de la
ayuda, hacer uso del ndice y buscar informacin en la ayuda de instalacin de
Microsoft SQL Server, as como guardar la posicin de la informacin en la
etiqueta Favoritos.

Ejercicio 1
Utilizando la ayuda de SQL Server
En este ejercicio, utilizar la ayuda de SQL Server para recuperar informacin
relativa a la arquitectura de SQL Server.
Para ver el contenido de la ayuda de SQL Server
1. Inicie sesin en el dominio NWTraders utilizando la informacin de la
siguiente tabla.
Opcin
Nombre de usuario
Contrasea

Valor
SQLAdminx (donde x corresponde al nombre de
su computadora el cual fue especificado en el
dominio nwtraders.msft
Contrasea

2. Inserte el disco compacto con la etiqueta Microsoft SQL Server 2000 en el


drive CD-ROM, cuando el cuadro de dilogo Microsoft SQL Server 2000
Developer Edition aparezca, haga clic en examinar ayuda de
instalacin/actualizacin.
3. En la consola de rbol, revise la organizacin de la ayuda de instalacin.
4. En la consola de rbol, expanda Temas relacionados y haga clic en
arquitectura de bases de datos.
5. Revise la informacin en el panel de Detalles.
Utilizando el ndice de la ayuda de instalacin de SQL Server para obtener
informacin sobre la arquitectura de SQL Server.
1. Haga clic en la ficha ndice, escriba la palabra Arquitectura y despus
haga doble clic en Arquitectura de base de datos cliente -servidor .
2. Haga clic en la ficha de Favoritos y despus clic en Agregar.
3. Haga clic en la etiqueta Contenido, despus en la consola de rbol,
expanda Arquitectura de bases de datos, expanda Componentes
lgicos de una base de datos, y observe los temas disponibles.

Unidad 1

- 21 -

www.icam.com.mx

Gua rpida SQL Server 2000

Divisin Empresas

Buscando informacin relativa a una palabra o frase en la ayuda de


instalacin de SQL Server.
En este procedimiento, utilizar la ayuda de instalacin SQL Server para buscar
informacin sobre la arquitectura de SQL Server
1. Haga clic en la etiqueta Buscar, teclee arquitectura y despus haga clic
en Buscar.
2. Haga clic en Arquitectura de bases de datos.
3. Haga clic en cualquier parte del panel detalles y presiones CTRL + F.
4. En la caja Buscar, escriba tempdb y haga clic en Buscar siguiente.
5. Haga clic en Cancelar y cierre la ventana de dilogo de ayuda de
instalacin de SQL Server.
6. Cierre la ventana de dialogo de Microsoft SQL Server 2000 Developer
Edition.

Unidad 1

- 22 -

www.icam.com.mx

También podría gustarte