Inicio > Sql 2012 Denali > Introducción a las bases de datos

Introducción a las bases de datos


sql

Creación de base de datos

Inicie Microsoft SQL Server.
En el combo box del Nombre de servidor, asegúrese de que el nombre del equipo está activada.
En el combo box de autenticación, asegúrese de que la autenticación de por SQl Server está seleccionada.
Asegúrese de que la cuenta de que está utilizando está seleccionado en el cuadro combinado Nombre de usuario.

Conectamos al servidor SqlServer

El nombre de una base de datos

Probablemente, el requisito más importante de la creación de una base de datos es para darle un nombre.

Transact-SQL es muy flexible cuando se trata de nombres.

De hecho, es muy menos restrictivas que la mayoría de otros lenguajes. Sin embargo, hay reglas que debe seguir al asignar nombres a una base de datos:

– Un nombre puede empezar con una letra (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y , Z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X , Y o Z), un dígito (0, 1, 2, 3, 4, 5, 6, 7, 8, o 9), un subrayado (_) o un carácter no legible. Ejemplos de ello son _n, acto, 783%
– Después del primer carácter (letra, dígito, subrayado o símbolo), el nombre puede tener combinaciones de relieve, letras, números o símbolos. Ejemplos son _n24 o act_52_t
– Un nombre puede incluir espacios. Ejemplo son c0untries st @ ts, govmnt (registros), o gl0b # $ ENCUESTA | |

Debido a la flexibilidad de Transact-SQL, puede ser difícil de mantener los nombres en una base de datos. En base a esto, hay convenios que usaremos para nuestros objetos. De hecho, vamos a aprobar las reglas usadas en C / C + +, C #, Pascal, Java, y Visual Basic, etc En nuestra base de datos:

A menos que se indique lo contrario (vamos a hablar de las excepciones, por ejemplo, con variables, tablas, etc), un nombre que comienza con una letra (a, b, c, d, e, f, g, h, i, j, k , l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J , K, L, M, N, O, P, Q, R, S, T, u, V, W, X, Y o Z) o un subrayado

– Después del primer carácter, vamos a utilizar cualquier combinación de letras, dígitos o guiones
– Un nombre no se iniciará con dos guiones bajos
– Si el nombre es una combinación de palabras, por lo menos la segunda palabra comenzará en mayúsculas.

Ejemplos de ello son estadísticas de los países, Encuesta Global, _RealSport y NombreTotal o NumeroLicencias

Después de crear un objeto cuyo nombre incluye el espacio, siempre que utilice ese objeto, incluya su nombre entre [corchetes]. Ejemplos de ello son [Estadísticas Países], [Encuesta Mundial], o [Fecha de nacimiento]. Incluso si usted ha creado un objeto con un nombre que no incluye el espacio, cuando se utiliza ese nombre, puede incluirlo entre corchetes. Ejemplos de ello son [UnitedStations], [NombreTotal], [NumeroLicencias], y [país].

En el Explorador de objetos, haga clic con bases de datos y haga clic en Nueva base de datos …

En el cuadro de texto Nombre, escriba rahsuarez

El propietario de una base de datos

Siempre que una nueva base de datos se crea, el servidor quiere hacer un seguimiento de quién creó esa base de datos. Esto se conoce como el propietario de la base.

De forma predeterminada, Microsoft SQL Server crea una cuenta especial denominada dbo (propietario de la base de dato).

Cuando se crea una base de datos pero no especifica el propietario, se utiliza la cuenta dbo también se da derechos a todos los tipos de operaciones que se pueden realizar en la base de datos.

Sin embargo, si lo desea, puede especificar otro usuario como propietario de la base de datos. Por supuesto, la cuenta debe existir, lo que significa que debería haber creado previamente o puede utilizar una ya existente.

Para especificar visualmente el dueño de una base de datos que está creando, puede hacer clic en <default> en el cuadro de texto Propietario (Owner), escriba el nombre del dominio, seguido por una barra vertical hacia atrás, y seguido por el nombre del usuario propietario de la base de datos.
Como alternativa, puede hacer clic en el botón de puntos suspensivos en el lado derecho del cuadro de texto Propietario. Esto abriría la ventana para ver los usuarios:


Escriba el nombre completo o el nombre del usuario a quien desea asignar la base de datos.

Después de hacer eso, haga clic en Comprobar nombres.

Si el nombre es correcto, el cuadro de diálogo lo aceptaría.
Si el nombre no es correcto, usted recibirá un error.

Bases de datos por defecto

Cuando se instala Microsoft SQL Server, también se instala 4 bases de datos con nombre master, model, msdb y tempdb. Estas bases de datos será para uso interno. Esto significa que usted debe evitar directamente a través de ellos, a menos que sepa exactamente lo que está haciendo.

Una de las bases de datos instaladas con Microsoft SQL Server se llama master. Esta base de datos contiene toda la información sobre el servidor en el que está instalado el Microsoft SQL Server. Por ejemplo, usted sabe que, para realizar cualquier operación en el servidor, deberá iniciar la sesión. La base de datos maestra identifica a cualquier usuario que acceda a la base de datos, cuándo y cómo.

Además de identificar quién tiene acceso al sistema, la base de datos principal también realiza un seguimiento de todo lo que haces en el servidor, incluyendo la creación y gestión de bases de datos.

Usted no debe jugar con la base de datos maestra en el riesgo de corromper el sistema. Por ejemplo, si la base de datos maestra no está funcionando bien, el sistema no funcionaría.

Creación de base de datos

Para crear una base datos en sql server la damos boton derecho a DataBases y seleccionamos nueva Base de Datos

A la base de datos, le vas a dar el nombre RAHsuarez, así que escribe ese nombre en la caja de textos correspondiente y después pulsa en el botón Aceptar.

Y se crea la base de datos , lo podemos ver en el Explorador de Objetos

En el ejemplo siguiente se crea la base de datos RAHSuarez. Debido a que no se utiliza la palabra clave PRIMARY, el primer archivo (RAHSuarez _dat) se convierte en el archivo principal. Como no se especifica MB ni KB en el parámetro SIZE del archivo RAHSuarez _dat, se utiliza MB y el tamaño se asigna en megabytes.

El tamaño del archivo RAHSuarez _log se asigna en megabytes porque el sufijo MB se ha indicado explícitamente en el parámetro SIZE.

En el ejemplo siguiente se crea la base de datos RAHSuarez, que tiene tres archivos de datos de 100-MB y dos archivos de registro de transacciones de 100-MB.
El archivo principal es el primer archivo de la lista y se especifica explícitamente con la palabra clave PRIMARY.

Los archivos de registro de transacciones se especifican a continuación de las palabras clave LOG ON. Tenga en cuenta las extensiones usadas para los archivos en la opción FILENAME: .mdf se usa para archivos de datos principales, .ndf para archivos de datos secundarios y .ldf para archivos de registro de transacciones.

Rutinas de base de datos

Selección de una base de datos

Al escribir el código en una ventana de consulta, siempre debe saber lo que la base de datos que está trabajando, de lo contrario puede agregar código a la base de datos incorrecta.

Para seleccionar visualmente una base de datos seleccionar en la barra de herramientas de diseño de SQL, haga clic en la flecha del cuadro combinado Bases de datos disponibles y seleccionar la base de datos que desee:

Para especificar en programación la base de datos actual, ya sea en la ventana de consulta o con la utilidad sqlcmd (incluida la PowerShell) en la línea de comandos, escriba la palabra clave USE seguido por el nombre de la base de datos. La fórmula a utilizar es:

USE NombredelaBasedeDatos;



Creación de un usuario

En este punto se mostrara cómo crear un usuario de base de datos asignado a un inicio de sesión en SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL.

El usuario de la base de datos es la identidad del inicio de sesión cuando está conectado a una base de datos.
El usuario de la base de datos puede utilizar el mismo nombre que el inicio de sesión, pero esto no es necesario.
Dentro de nuestro servidor de base de datos en la pestaña Security – Login , escoger New Login…

Asigne un login name, por seguridad de modo SQL Server authentication, la base de datos en la cual operará

En la parte de User Mapping, apunta a la base de datos y al esquema en el que se trabajará.

El siguiente paso es ir a la base de datos en la pestaña de seguridad y después en Users.


Chequemos que exista el usuario que hayamos creado.
Después de haber verificado seleccionamos el usuario y damos clic Derecho – propiedades.

En la pestaña de Securables, damos clic en el botón Search…

Seleccionamos la opción de All objects of the types …

En este caso solo quiero que se conecte a la base de datos y que pueda ejecutar sentencias de tipo SELECT sobre dichas tablas.

Checamos que tenga los permisos de Connect y SELECT.

Iniciamos con el usuario creado.

Nos dispondremos a realizar una consulta sobre la tabla dbo. RAHSuarezTabla

La consulta se ha realizado con exito.

Probamos a agregar un nuevo registro.

Podemos utilizar también comandos para la creación de usuario y login

Roles

Los roles de SQL Server cumplen la misma función que un rol de Windows, esto es, agrupar usuarios que comparten los mismos permisos. Dichos permisos son otorgados al rol y los usuarios heredan los permisos de los roles.

SQL Server posee una serie de permisos a nivel de instancia, estos roles son fijos y no pueden modificarse, así como tampoco se pueden crear nuevos roles a nivel de instancia.

En la tabla siguiente se muestran los roles fijos de nivel de servidor y sus capacidades.

Creamos un Login para este ejemplo.  RAHSuarezDB contraseña rahsuarez123

Creamos un Rol que solo pueda crear , modificar , quitar y restaurar cualquier base de datos

Verificamos que este creado

Iniciamos sesión como RAHSuarezDB

Intentamos crear una base de datos y no da error

Intentamos acceder crear un nuevo login  no nos da error

Roles predeterminados de Base de Datos

Al igual que a nivel de instancia, también tenemos roles predeterminados a nivel Base de datos.

En la tabla siguiente se muestran los roles fijos de nivel de base de datos y sus capacidades. Estos roles existen en todas las bases de datos.

Un ejemplo de creación de un Rol de Base de Datos

Creamos un DB llamada PruebaRoles

Creamos 2 Tablas una que se llame Clientes y la Otra Proveedores

Creamos un login y un usuario para la DB creada

Login : RAHSuarezRoles
Usuario :  RAHSuarezRoles
Password : rahsuarez123

Creamos un Rol de Base de Datos, con el nombre PruebaRoles

Ingreso con el usuario RAHSuarezRoles


Y verifico que no tengo acceso a nada

Modificamos las propiedades del Rol que se creo

Ingresamos con el usuario que creamos

Verificamos que tenemos ahora ACCESO a las tablas

Ahora modificamos las propiedades del rol y le quitamos el Select a la tabla de Clientes

Ingresamos con el usuario que creamos

Verificamos y no tenemos acceso a realizar un Select

Pero si puedo realizar un Insert a la Tabla

Ahora le daremos permisos para que solo pueda ver las columnas de Nombre y Dirección

Ingresamos con el usuario que creamos

Verificamos que no se puede realizar un Select sobre el campo [idCliente]

Pero si es posible realizar un Select sobre los otros 2 campos

Creamos un login y un usuario para la DB

Login : RAHSuarezRoles2
Usuario :  RAHSuarezRoles2
Password : rahsuarez123

Le asignamos el Rol creado

Nos conectamos al servidor con RAHSuarezRoles2

Verificamos que tiene los mismos permisos que el primer usuario

Les dejo un link para que vean las funciones que devuelven información útil para la administración de la seguridad.

Funciones de seguridad (Transact-SQL)

Esquemas

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 sobre todo 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.

Para crear visualmente un esquema, haga clic con esquemas y haga clic en Nuevo esquema (New Schema)

Esto abrirá el cuadro para crear un nuevo esquema

Después de dar un nombre, puede hacer clic en Aceptar.

La fórmula para crear mediante programación un esquema es el siguiente:

Creamos una Tabla bajo el Esquema creado anteriormente

La tabla se creó bajo el Esquema de Contabilidad

 

RegresarAlTutorial

 

Categorías: Sql 2012 Denali
  1. Carlos
    30 septiembre 2012 a las 1:30 pm

    Muy buen tutorial, es bastante didáctico.

  1. 26 abril 2012 a las 10:36 pm

Deja un comentario