Esquemas en Sql Server 2005

Hola buen dia. 

Soy nuevo en la pagina y ademas recien arranco con Sql Server 2005, escuche hablar sobre Esquemas y la verdad no se cual es el motivo por el cual se usan. Es decir, para que sirven y cuando tengo que usarlos. 

Agradeceria su ayuda para solventar esta duda. Muchas gracias de antemano. 

Saludos. Gabriel

Gabriel, te he montado una defición de esquemas de SQL Server, obtenida de las librerías de microsoft:

Un esquema simplemente es un contenedor de objetos. Cada esquema es un espacio de nombres distinto que existe de forma independientemente del usuario de base de datos que lo creó. Cualquier usuario puede ser propietario de un esquema, y esta propiedad es transferible.

A partir de SQL Server 2005, los esquemas son entidades explícitas reflejadas en los metadatos y, como resultado, los esquemas solo pueden tener un propietario. Sin embargo, un único usuario puede poseer muchos esquemas.

 

Los esquemas te sirven sobretodo para organizar los objetos, y también la seguridad de la base de datos, especialmente cuando tengas varios usuarios. Si un usuario posee un esquema, tiene por defecto permisos sobre los objetos de ese esquema que no tendrán otros usuarios, a menos que se les hayan concedido expresamente.

En respuesta a por Carlos

 Hola Amigo,

 

Tengo una pregunta a tu respuesta con respecto a los esquemas en SQL Server. Crear muchos esquemas puede realentizar la Base de datos? o puede hacer que se consuman más recursos? la idea es crear un esquema por cada sistema que manejamos, y asi mantener los objetos de cada uno separados.

 

Gracias por tu respuesta.

 

 

Saludos

En respuesta a por dchiari

No te puedo decir exactamente la incidencia que tiene en el rendimiento de la base de datos la existencia de diferentes esquemas en lugar de uno sólo, pero ha de ser insignificante con respecto a otros aspectos a tener en cuenta, más de ventajas/desventajas de organización y seguridad.

Supongo que tampoco tendréis tantos sistemas, por lo que por lo que cuentas a mi me parece una buena práctica crear un esquema para cada uno.

Piensa que además, si se asignan ficheros físicos diferentes a los diferentes esquemas, puedes obtener muchas ventajas de cara al mantenimiento, backups, restauraciones, etc. Incluso, según los datos que tengas en cada sistema, puede llegar a ser más eficiente que estén separados. 

En respuesta a por angelluisgo

Hola Angel

El esquema INFORMATION_SCHEMA guarda información sobre la estructura de objetos de SQL Server como tablas y vistas.

Para comenzar a explorarlo puedes probar con sentencias sencillas como:

SELECT * FROM INFORMATION_SCHEMA.TABLES;
SELECT * FROM INFORMATION_SCHEMA.COLUMNS;
SELECT * FROM INFORMATION_SCHEMA.VIEWS;

Espero que sea lo que buscas