1 Creación de Bases de DatosSQL Server 2012 Creación de Bases de Datos
2 Contenido Almacenamiento de la data Creando una Base de DatosCreando Tablas Tipos de Datos Valores Nulos Valores Autoincrementables Restricciones La sentencia Create Table
3 Objetivos Crear, modificar y eliminar bases de datosCrear, modificar y eliminar tablas Diseñar base de datos
4 Almacenamiento de la dataDatabase Data (file) .mdf or .ndf Log (file) .ldf Tablas,Indices Extent (8 pages continuos) Data Page (8 KB)
5 Responda 1 MB es igual a ............ páginas.2 MB es igual a extents. 4 MB es igual a páginas. 2560 páginas es igual a MB. 320 extents es igual a MB.
6 Creando una Base de DatosLa sentencia Create Database La sentencia Alter Database La sentencia Drop Database El diálogo New Database
7 Create Database CREATE DATABASE sample ON PRIMARY ( NAME=sample_data, FILENAME='c:\sample.mdf', SIZE=10MB, MAXSIZE=15MB, FILEGROWTH=20%) LOG ON ( NAME=sample_log, FILENAME='c:\sample.ldf', SIZE=3MB, MAXSIZE=5MB, FILEGROWTH=1MB)
8 Ejemplo CREATE DATABASE Prueba ON PRIMARY ( NAME=PruebaData,FILENAME='c:\data\PruebaData.mdf', SIZE=10MB, MAXSIZE=15MB, FILEGROWTH=20% ) LOG ON ( NAME=PruebaLog, FILENAME='c:\data\PruebaLog.ldf', SIZE=3MB, MAXSIZE=5MB, FILEGROWTH=1MB )
9 Alter Database 7 MB 3 MB ALTER DATABASE sample MODIFY FILE ( NAME = 'sample_log', SIZE = 10MB)
10 Drop Database Drop Database Prueba Drop Database Prueba, Pubs
11 Creando Tablas Tipos de Datos Creando nuevos tipos de datosValores Nulos Valores Autoincrementables Restricciones La sentencia Create Table La sentencia Alter Table La sentencia Drop Table
12 Tipos de Datos Binarios binary [(n)], varbinary[(n)] Caracteres char[(n)], varchar[(n)] Fecha y hora datetime, smalldatetime N ú meros exactos decimal [(p[,s])], numeric[(p[,s])] N ú meros aproximados float [(n)], real Enteros Int, smallint, tinyint Monetario money, smallmoney Especial bit, timestamp, def. por usuario Texto e imagen text, image
13 Creando nuevos tipos de datosEXEC sp_addtype isbn, 'smallint’, 'NOT NULL' EXEC sp_addtype zipcode, 'char(10)' EXEC sp_addtype longstring, 'varchar(63)' Eliminado EXEC sp_droptype isbn
14 Valores Nulos Después de definir el nombre y tipo de campo se puede indicar que este pueda aceptar o no valores nulos. id_Alumno char(4) NOT NULL, Telefono char(7) NULL
15 Valores AutoincrementablesSi se especifica IDENTITY para un campo, entoces cada vez que se añada una nueva columna se incrementará automáticamente el contenido de ese campo. id_Producto int Identity(100, 5) La primera vez el campo id_Producto tendrá el valor 100. Para las siguientes filas será 105, 110, 115, ....
16 Restricciones Se usan para especificar condiciones de integridad referencial. Constraint PK_Alumno Primary Key(id_Alumno) Se ha creado una llave primaria (PK_Alumno) con respecto a la columna id_Alumno de la tabla. Constraint FK_Alumno Foreign Key(id_Alumno) References Alumnos Se ha creado una llave foránea (FK_Alumno) con respecto a la columna id_Alumno de la tabla actual, vinculada a la tabla Alumnos.
17 La sentencia Create TableNombre de columna Tipo de dato NULL o NOT NULL CREATE TABLE member ( member_no lastname firstname middleinitial photograph ) shortstring letter image NOT NULL, NULL, NULL
18 La sentencia Alter TableALTER TABLE sales ADD customer_name char(30) null ADD Commission Sales_amount Sales_date Customer ID Customer_name DROP ALTER TABLE sales DROP COLUMN sales_date
19 La sentencia Alter TableAlter Table Alumnos Add Constraint PK_Alumno Primary Key(id_Alumno)
20 La sentencia Drop TableDrop Table Alumnos Elimina una tabla. Si se tienen tablas relacionadas. Primero deben ser eliminadas las foráneas y luego la primaria.
21 Ejercicio 1: Crear las siguientes tablas
22 Ejercicio 2: Crear las siguientes tablas
23 Ejercicio 3: Crear las siguientes tablas