Crear base de Datos SQL SERVER


Buenas tardes queridos lectores, seguimos adelante con el curso de SQL SERVER, y hoy toca el turno a la creación de una base de datos. Para crear una base de datos es importante conocer cuales son las partes de una base de Datos. Como esta formada, cuales son los archivos que lleva y las opciones de personalización, también es importante conocer las maneras que tenemos para crear una base de datos, que son el entorno gráfico mediante el management studio y mediante código o script llamado también Transact-SQL, en este caso veremos las dos maneras.



Componentes de una base de Datos


Cuando se crea una base de datos se tiene que tener en cuenta el nombre de la base de Datos, el propietario (el usuario que crea la base de datos), su tamaño, archivos y grupo de archivos. 

Antes de crear una base de datos se debe considerar lo siguiente:
  • De forma predeterminada, tienen permiso para crear base de datos las funciones fijas de servidor sysadmin y dbcreator, (es decir los usuarios administradores) pero se puede dar permisos a otros usuarios.
  • El usuario que crea la base de datos se convierte en su propietario.
  • En cada instancia se pueden crear hasta 32767 bases de datos.
Se utilizan tres tipos de archivos para crear una base de datos:

Archivos de base de Datos


  • Archivo mdf: Es el archivo principal, y solo puede haber un archivo por base de datos y este puede contener toda la información referente a la base de datos, dicha información se almacena en tablas.
  • Archivos ndf: Es el archivo secundario, contienen datos que no caben en el archivo principal, no todas las bases de datos tienen que tener archivos ndf, solo deberíamos poner el archivo principal lo suficientemente grande.
  • Archivo ldf: Este archivo es el archivo de LOG o archivo de transacción, contiene información interna como la fecha de creación y otras características de la base de datos. El tamaño mínimo para un archivo de log es de 512Kb.
Archivos mdf y ndf


Archivo de Log


Al crear una base de datos, se creara una réplica de la base de datos model. Para crear una base de datos utilizaremos la sentencia DDL Create, de la siguiente manera:

Transact-SQL


Básico


La instrucción más básica para crear una base de datos es la siguiente:

CREATE DATABASE <NOMBREBASEDATOS>

GO


Esto nos creará una base de datos con los valores predeterminados, los mismos que estén en la base de datos de model.

Con archivo maestro

Con este método definiremos algunos parámetros configurables para la base de datos, como la ubicación y los nombres, tanto físico, como lógico del archivo maestro

CREATE DATABASE CURSO_SQL

ON PRIMARY (

NAME = 'CURSO_SQL',

FILENAME  = 'C:\BD\DATAS\CURSO_SQL.mdf',

SIZE = 350MB,

MAXSIZE = 10GB,

FILEGROWTH = 200MB)


Con archivo secundario

CREATE DATABASE CURSO_SQL

ON PRIMARY (

NAME = 'CURSO_SQL',

FILENAME  = 'C:\BD\DATAS\CURSO_SQL.mdf',

SIZE = 350MB,

MAXSIZE = 10GB,

FILEGROWTH = 200MB),

 

(NAME = 'CURSO_SQL_1',

FILENAME = 'c:\BD\DATAS\CURSO_SQL_1.ndf',

SIZE = 350MB,

MAXSIZE = 10GB,

FILEGROWTH = 200MB)



Con log de transacciones


CREATE DATABASE CURSO_SQL

ON PRIMARY (

NAME = 'CURSO_SQL',

FILENAME  = 'C:\BD\DATAS\CURSO_SQL.mdf',

SIZE = 350MB,

MAXSIZE = 10GB,

FILEGROWTH = 200MB),

 

(NAME = 'CURSO_SQL_1',

FILENAME = 'c:\BD\DATAS\CURSO_SQL_1.ndf',

SIZE = 350MB,

MAXSIZE = 10GB,

FILEGROWTH = 200MB)

 

LOG ON(

NAME = 'CURSO_SQL_LOG',

FILENAME = 'C:\BD\LOGS\CURSO_SQL_LOG.LDF',

SIZE = 350MB,

MAXSIZE = 10GB,

FILEGROWTH = 200MB)


Con este script especificamos el nombre de la base CURSO_SQL además de algunos parámetros interesantes:

  • ON PRIMARY: Especifica que la lista de archivos esta asociada al grupo principal. Este grupo contiene todas las tablas del sistema de base de datos. También contiene todos los objetos no asignados a los grupos de archivo asignados.
  • NAME: Es el nombre lógico de la base de datos.
  • FILENAME: Nombre físico y ubicación del archivo principal
  • SIZE: Tamaño inicial del archivo.
  • MAXSIZE: Tamaño máximo que puede tener el archivo.
  • FILEGROWTH: Factor de crecimiento del archivo, se puede especificar en valor en KB, MB o GB, también en porcentaje. En este caso el archivo inicialmente tiene 350MB de espacio, cuando se llenen los 350MB, aumentará de tamaño de acuerdo al factor de crecimiento indicado, siempre y cuando el tamaño no supere los 10GB asignados en MAXSIZE, en este caso será de 200MB, lo cual quiere decir, que cuando el archivo llegue a los 350MB automáticamente aumentará a 550MB debido al valor configurado en FILEGROWTH que es de 200MB. El valor predeterminado, en caso de no especificarlo es de 10%

Modificación de archivos de una base de Datos

Para agregar, modificar o eliminar algún archivo de base de datos se utilizará la sentencia DDL Alter. Tomemos en cuenta la siguiente sentencia:

ALTER DATABASE CURSO_SQL ADD FILE

(NAME = 'CURSO_SQL_1',

FILENAME = 'c:\BD\DATAS\CURSO_SQL_1.ndf',

SIZE = 350MB,

MAXSIZE = 10GB,

FILEGROWTH = 200MB)


Eliminar archivos de una base de Datos


ALTER DATABASE CURSO_SQL

REMOVE FILE  CURSO_SQL_1

GO



Eliminar una base de datos


Para eliminar una base de datos se utiliza la sentencia DDL Drop

DROP DATABASE CURSO_SQL

GO


Entorno gráfico (Management Studio)

Para crear una base de datos mediante entorno gráfico en Management Studio realizaremos lo siguente:

En la carpeta Databases, daremos clic derecho y haremos clic en New Database.


Posterior a eso, configuraremos el nombre de la base de datos, el nombre físico, lógico y las ubicaciones de los archivos, tal cual lo hemos realizado de manera manual con Transact, en el entorno gráfico es lo mismo.


Bastará con darle clic en OK para crear la base de datos.

Pues bien, esto es todo por hoy, con esa base de datos trabajaremos los siguientes post. Espero haya sido de su agrado y utilidad, los invito a compartir, a comentar, o a darle clic en algun anuncio de su interes. 

Saludos



No hay comentarios.:

Publicar un comentario

Crear tablas en SQL SERVER

 Seguimos con el curso de SQL SERVER y hoy veremos la creación de tablas, hemos visto ya los tipos de datos y el día de hoy comenzaremos a c...