SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Introducción a SQL Julián Castiblanco P. Julian_castiblancop@hotmail.com Líder ITPros-DC MCITP DatabaseAdministrator SQL Server2008 MCTS DatabaseDeveloper SQL Server 2008 Microsoft Certified Training
Agenda del Ciclo Primera Sesión:Modelos RelacionalesNormalizaciónEjemplo Segunda Sesión:Creación de Bases de datosCreación de TablasCreación de restriccionesIntroducción a Transact SQLEjemplo Tercera Sesión:Creación de ProcedimientosCreación de VistasSeguridad de Bases de datos
Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
Como se guarda la información en SQL Server 1 3 4 2 Cliente Archivo de Log Transaccional *.LDF Archivo de Datos *.MDF, *. NDF Servidor de Base De Datos sqlservr.exe
Como se guarda la información en SQL Server C:rogram Files (x86)icrosoft SQL ServerSSQL10_50.SQLEXPRESSSSQLATA
Bases de datos Distribución Física Distribución Lógica MDF, NDF Filegroup 1 T1 T3 T4 Filegroup 2 T2 LDF
http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt
Creación de la base de datos CREATE DATABASE [Facturacion] ON  PRIMARY ( NAME = N'Facturacion', FILENAME = N'C:rogram Files (x86)icrosoft SQL ServerSSQL10_50.SQLEXPRESSSSQLATAacturacion.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) LOG ON  ( NAME = N'Facturacion_log', FILENAME = N'C:rogram Files (x86)icrosoft SQL ServerSSQL10_50.SQLEXPRESSSSQLATAacturacion_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%) GO
Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
Creación de Tablas USE Facturacion GO CREATE TABLEdbo.Producto 	( 	id smallint NOT NULL, 	name varchar(69) NOT NULL 	)  ON [PRIMARY] GO
Creación de Tablas sp_helpProducto GO ALTER TABLE dbo.Producto ADD  precio numeric(12,2) go Función de sistema para verificar estructura de Objetos
Tipos de Datos Numerics
Tipos de Datos Character Strings Date & Time
Tipos de Datos Approximate Numerics Binary
Demostración
Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
Restricciones Llave Primaria Tipo especial de restricción que identifica a una o varias columnas que permiten identificar como único a un registro en una tabla. Llave Foránea Establece y forza la relación entre tablas. Ayudan a mantener la integridad referencial.
Restricciones Llave Primaria CREATE TABLE Ciudad ( CiudadIDint NOT NULL PRIMARY KEY, CiudadNombrevarchar(40) NOT NULL) CREATE TABLE Person.EducationType (EducationTypeIDint NOT NULL, EducationTypeNMvarchar(40) NOT NULL) ALTER TABLEPerson.EducationType ADD CONSTRAINT PK_EducationType PRIMARY KEY (EducationTypeID) Cuando la tabla ya existe!!!
Restricciones Llave Foránea CREATE TABLE Person.EmergencyContact ( EmergencyContactIDint NOT NULL PRIMARY KEY, BusinessEntityIDint NOT NULL, ContactFirstNMvarchar(50) NOT NULL, ContactLastNMvarchar(50) NOT NULL, ContactPhoneNBRvarchar(25) NOT NULL) ALTER TABLE Person.EmergencyContact ADD CONSTRAINTFK_EmergencyContact_Employee FOREIGN KEY (BusinessEntityID) REFERENCESHumanResources.Employee (BusinessEntityID)
Restricciones Llave Artificial Son llaves no propiamente del negocio utilizadas normalmente para identificar a un registro como único en una tabla. CREATE TABLEFactura (FacturaIDint NOT NULL IDENTITY(1,1)PRIMARY KEY, ClienteIDint NOT NULL , VendedorIDintNOT NULL, fechadatetime NOT NULL DEFAULT GETDATE())
El documento no es la llave principal de la tabla, pero debe ser único Restricciones UniqueConstraint Además de tener la llave primera, podríamos requerir que algunas columnas fueran únicas en nuestra tabla. CREATE TABLE dbo.Cliente ( ClienteIDint NOT NULL  IDENTITY(1,1) PRIMARY KEY, Nombre varchar(90) NOT NULL, Documentovarchar(90) NOT NULL UNIQUE)
Restricciones CheckConstraint Valida que los datos a guardarse en una columna, cumplan ciertas reglas. CREATE TABLE Empleado( EmpleadoIDint NOT NULL PRIMARY KEY, Nombre varchar(59) NOT NULL, ProfesionIDint NULL, Salario numeric(12,2) NOT NULL CHECK(Salario> 1 AND GPA <=10000000))
Restricciones Default Constraint Si no se ingresa valor al momento  de ingresar el registro, el sistema guarda uno por defecto. CREATE TABLE Empleado ( EmpleadoIDint NOT NULL PRIMARY KEY, Nombre varchar(90) NOT NULL, FechaVinculacionsmalldatetimeNOT NULL DEFAULT GETDATE(), Salario numeric(12,2) NOT NULL )
Demostración
Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
SQL SELECT Sentencia que permite traer de la base de datos la información almacenada en las tablas. Devuelve todas las columnas SELECT nombre, Documento, Salario FROM dbo.Empleado SELECT * FROM dbo.Empleado
SQL SELECT…FROM…WHERE La clausula WHERE permite condicionar los resultados recibidos de una consulta. SELECT nombre, Documento, Salario FROM dbo.Empleado WHERE Documento=80222075 SELECT * FROM dbo.Empleado WHERE Genero=‘F’ AND Salario>5000000
SQL Negación de Condición Permite negar condiciones en la clausula WHERE. SELECT * FROM dbo.Empleado WHERENOTGenero=‘M’ AND Salario>5000000
SQL
SQL Subconsultas Permiten que el resultado de una consulta sea parte de la condición para otra consulta SELECT DISTINCT s.PurchaseOrderNumber FROM Sales.SalesOrderHeader s WHERE EXISTS ( SELECT SalesOrderID FROM Sales.SalesOrderDetail WHERE UnitPrice BETWEEN 1000 AND 2000 AND SalesOrderID = s.SalesOrderID)
Fuentes https://www.microsoftmva.com/ http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt SQL and RelationalTheory. C.J. Date. Junio 2009 SQL Server 2008 Transact-SQL Recipes. Joseph Sack.  2008
Demostración
Gracias!!! http://julycastiblanco.blogspot.com/ Julian_castiblancop@hotmail.com

Weitere ähnliche Inhalte

Was ist angesagt?

Comandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbenchComandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbench
Robedgar MX
 
Practicas tablespaces tema5 oracle tablespace
Practicas tablespaces tema5 oracle tablespacePracticas tablespaces tema5 oracle tablespace
Practicas tablespaces tema5 oracle tablespace
Carlos Ocola Ugarte
 
Codigo para crear la base de datos
Codigo para crear la base de datosCodigo para crear la base de datos
Codigo para crear la base de datos
Alvaro Cardona
 
Pasos para la creación de base de datos
Pasos para la creación de base de datosPasos para la creación de base de datos
Pasos para la creación de base de datos
kensy_Jazmin
 
Vistas En Sql Y My Sql
Vistas En Sql Y My SqlVistas En Sql Y My Sql
Vistas En Sql Y My Sql
Ziscko
 

Was ist angesagt? (15)

Sql server(1)
Sql server(1)Sql server(1)
Sql server(1)
 
Database fundamental itprosdc_chapter2
Database fundamental itprosdc_chapter2Database fundamental itprosdc_chapter2
Database fundamental itprosdc_chapter2
 
Presentación1
Presentación1Presentación1
Presentación1
 
Comandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbenchComandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbench
 
Practicas tablespaces tema5 oracle tablespace
Practicas tablespaces tema5 oracle tablespacePracticas tablespaces tema5 oracle tablespace
Practicas tablespaces tema5 oracle tablespace
 
Tipos de datos en MySQL Workbench
Tipos de datos en  MySQL  WorkbenchTipos de datos en  MySQL  Workbench
Tipos de datos en MySQL Workbench
 
SQL Server rápido y furioso
SQL Server rápido y furiosoSQL Server rápido y furioso
SQL Server rápido y furioso
 
Ejemplo Base de Datos SQLite (Android)
Ejemplo Base de Datos SQLite (Android)Ejemplo Base de Datos SQLite (Android)
Ejemplo Base de Datos SQLite (Android)
 
SQL-DDL
SQL-DDLSQL-DDL
SQL-DDL
 
Connection Java
Connection JavaConnection Java
Connection Java
 
Codigo para crear la base de datos
Codigo para crear la base de datosCodigo para crear la base de datos
Codigo para crear la base de datos
 
Manual practicosql
Manual practicosqlManual practicosql
Manual practicosql
 
Guía 02. Ejercicios de teoría sobre SQL - José J Sánchez H
Guía 02. Ejercicios de teoría sobre SQL - José J Sánchez HGuía 02. Ejercicios de teoría sobre SQL - José J Sánchez H
Guía 02. Ejercicios de teoría sobre SQL - José J Sánchez H
 
Pasos para la creación de base de datos
Pasos para la creación de base de datosPasos para la creación de base de datos
Pasos para la creación de base de datos
 
Vistas En Sql Y My Sql
Vistas En Sql Y My SqlVistas En Sql Y My Sql
Vistas En Sql Y My Sql
 

Andere mochten auch

Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2
Sergio Sanchez
 
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Sergio Sanchez
 
CONEXION VISUAL STUDIO.NET - SQL SERVER
CONEXION VISUAL STUDIO.NET - SQL SERVERCONEXION VISUAL STUDIO.NET - SQL SERVER
CONEXION VISUAL STUDIO.NET - SQL SERVER
Darwin Durand
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
josecuartas
 
Introduccion a SQL
Introduccion a SQLIntroduccion a SQL
Introduccion a SQL
AaAaA88
 
D:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 ServerD:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 Server
guestb4f410
 

Andere mochten auch (20)

SQL - Structured Query Language
SQL - Structured Query LanguageSQL - Structured Query Language
SQL - Structured Query Language
 
Lenguaje sql
Lenguaje sqlLenguaje sql
Lenguaje sql
 
T4 Sql LMD
T4 Sql  LMDT4 Sql  LMD
T4 Sql LMD
 
Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2
 
Introducción a sql
Introducción a  sqlIntroducción a  sql
Introducción a sql
 
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
 
Introducción a Sql
Introducción a SqlIntroducción a Sql
Introducción a Sql
 
Unidad 6 Lenguaje Sql
Unidad 6 Lenguaje SqlUnidad 6 Lenguaje Sql
Unidad 6 Lenguaje Sql
 
CONEXION VISUAL STUDIO.NET - SQL SERVER
CONEXION VISUAL STUDIO.NET - SQL SERVERCONEXION VISUAL STUDIO.NET - SQL SERVER
CONEXION VISUAL STUDIO.NET - SQL SERVER
 
Manual Visual Basic .NET SQL Server paso a paso
Manual Visual Basic .NET SQL Server paso a pasoManual Visual Basic .NET SQL Server paso a paso
Manual Visual Basic .NET SQL Server paso a paso
 
Proyectos de Base de Datos con Visual Studio 2013
Proyectos de Base de Datos con Visual Studio 2013Proyectos de Base de Datos con Visual Studio 2013
Proyectos de Base de Datos con Visual Studio 2013
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 
Visual y sql
Visual y sqlVisual y sql
Visual y sql
 
MANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQLMANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQL
 
SQL Basics
SQL BasicsSQL Basics
SQL Basics
 
Ejercicios resueltos de sql
Ejercicios resueltos de sqlEjercicios resueltos de sql
Ejercicios resueltos de sql
 
Manual sql server parte 1
Manual sql server parte 1Manual sql server parte 1
Manual sql server parte 1
 
Introduccion a SQL
Introduccion a SQLIntroduccion a SQL
Introduccion a SQL
 
Lenguaje de Manipulación de Datos
Lenguaje de Manipulación de DatosLenguaje de Manipulación de Datos
Lenguaje de Manipulación de Datos
 
D:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 ServerD:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 Server
 

Ähnlich wie Fundamentos sql server2

Tm13 introduccion al_sql
Tm13 introduccion al_sqlTm13 introduccion al_sql
Tm13 introduccion al_sql
Julio Pari
 
4. sql (autoguardado)
4. sql (autoguardado)4. sql (autoguardado)
4. sql (autoguardado)
felpe33
 

Ähnlich wie Fundamentos sql server2 (20)

Manual practico-sql
Manual practico-sqlManual practico-sql
Manual practico-sql
 
Manual practico para sql ingieneria de sistemas
Manual practico para sql ingieneria de sistemas  Manual practico para sql ingieneria de sistemas
Manual practico para sql ingieneria de sistemas
 
Manual practico SQL
Manual practico SQLManual practico SQL
Manual practico SQL
 
Manual practicosql
Manual practicosqlManual practicosql
Manual practicosql
 
Manual practico SQL
Manual practico SQLManual practico SQL
Manual practico SQL
 
ManualPracticoSQL.pdf
ManualPracticoSQL.pdfManualPracticoSQL.pdf
ManualPracticoSQL.pdf
 
Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)
 
OVA DISEÑO ORACLE Introducción Bases de Datos .pptx
OVA DISEÑO ORACLE Introducción Bases de Datos .pptxOVA DISEÑO ORACLE Introducción Bases de Datos .pptx
OVA DISEÑO ORACLE Introducción Bases de Datos .pptx
 
Tm13 introduccion al_sql
Tm13 introduccion al_sqlTm13 introduccion al_sql
Tm13 introduccion al_sql
 
1 lab-2 -tablas-y-restricciones
1 lab-2 -tablas-y-restricciones1 lab-2 -tablas-y-restricciones
1 lab-2 -tablas-y-restricciones
 
Bdii 09 ddl_new
Bdii 09 ddl_newBdii 09 ddl_new
Bdii 09 ddl_new
 
Material Clase BDD: Diseño de una Base de Datos
Material Clase BDD: Diseño de una Base de DatosMaterial Clase BDD: Diseño de una Base de Datos
Material Clase BDD: Diseño de una Base de Datos
 
Base de datos dinamicas
Base de datos dinamicasBase de datos dinamicas
Base de datos dinamicas
 
SQL_ADO.NET.ppt
SQL_ADO.NET.pptSQL_ADO.NET.ppt
SQL_ADO.NET.ppt
 
SQL_ADO.NET.pptx
SQL_ADO.NET.pptxSQL_ADO.NET.pptx
SQL_ADO.NET.pptx
 
Primeros Pasos Aplicacion Java conexión BD Mysql
Primeros Pasos Aplicacion Java conexión BD MysqlPrimeros Pasos Aplicacion Java conexión BD Mysql
Primeros Pasos Aplicacion Java conexión BD Mysql
 
Tsql
TsqlTsql
Tsql
 
4. sql (autoguardado)
4. sql (autoguardado)4. sql (autoguardado)
4. sql (autoguardado)
 
S ti ci_v1_201302
S ti ci_v1_201302S ti ci_v1_201302
S ti ci_v1_201302
 
Parte 08 my sql
Parte 08 my sqlParte 08 my sql
Parte 08 my sql
 

Mehr von Julián Castiblanco

70 462 Instalación SQL Server 2012
70 462 Instalación SQL Server 201270 462 Instalación SQL Server 2012
70 462 Instalación SQL Server 2012
Julián Castiblanco
 

Mehr von Julián Castiblanco (20)

70461 Sesion2 Uso del SELECT, DISTINCT, CASE
70461 Sesion2 Uso del SELECT, DISTINCT, CASE70461 Sesion2 Uso del SELECT, DISTINCT, CASE
70461 Sesion2 Uso del SELECT, DISTINCT, CASE
 
Descubriendo los Datos - Bodegas de datos
Descubriendo los Datos - Bodegas de datosDescubriendo los Datos - Bodegas de datos
Descubriendo los Datos - Bodegas de datos
 
Tech Talk Live - ITPROSDC - Big data con july
Tech Talk Live - ITPROSDC - Big data con julyTech Talk Live - ITPROSDC - Big data con july
Tech Talk Live - ITPROSDC - Big data con july
 
Global Azure Bootcamp 2016 Bogota SQL2016 dba IaaS PaaS v4
Global Azure Bootcamp 2016 Bogota SQL2016 dba IaaS PaaS v4Global Azure Bootcamp 2016 Bogota SQL2016 dba IaaS PaaS v4
Global Azure Bootcamp 2016 Bogota SQL2016 dba IaaS PaaS v4
 
Global Azure Cloud Camp Bogota Introduccion Azure datalake
Global Azure Cloud Camp Bogota Introduccion Azure datalakeGlobal Azure Cloud Camp Bogota Introduccion Azure datalake
Global Azure Cloud Camp Bogota Introduccion Azure datalake
 
Lecciones aprendidas SQL Server AlwaryOn
Lecciones aprendidas SQL Server AlwaryOnLecciones aprendidas SQL Server AlwaryOn
Lecciones aprendidas SQL Server AlwaryOn
 
Sql saturday 448 migración de bases de datos sql server hacia azure sqldb
Sql saturday 448   migración de bases de datos sql server hacia azure sqldbSql saturday 448   migración de bases de datos sql server hacia azure sqldb
Sql saturday 448 migración de bases de datos sql server hacia azure sqldb
 
Databaseadmonfundamentalitprosdcchapter6
Databaseadmonfundamentalitprosdcchapter6Databaseadmonfundamentalitprosdcchapter6
Databaseadmonfundamentalitprosdcchapter6
 
Taller de sql server no 3
Taller de sql server no 3Taller de sql server no 3
Taller de sql server no 3
 
Optimización de motores sql server 24 horas SQL Pass
Optimización de motores sql server 24 horas SQL PassOptimización de motores sql server 24 horas SQL Pass
Optimización de motores sql server 24 horas SQL Pass
 
Database admonfundamental itprosdc_chapter2
Database admonfundamental itprosdc_chapter2Database admonfundamental itprosdc_chapter2
Database admonfundamental itprosdc_chapter2
 
Database Fundamentals - Sesión 1 - SQL Server
Database Fundamentals - Sesión 1 - SQL ServerDatabase Fundamentals - Sesión 1 - SQL Server
Database Fundamentals - Sesión 1 - SQL Server
 
Carbura tusql sesion2_slideshare
Carbura tusql sesion2_slideshareCarbura tusql sesion2_slideshare
Carbura tusql sesion2_slideshare
 
Carbura tusql sesion1_slideshare
Carbura tusql sesion1_slideshareCarbura tusql sesion1_slideshare
Carbura tusql sesion1_slideshare
 
Tarea dqs en ssis nunca termina
Tarea dqs en ssis nunca terminaTarea dqs en ssis nunca termina
Tarea dqs en ssis nunca termina
 
Características Adminsitración SQL Server 2012 Parte 3
Características Adminsitración SQL Server 2012 Parte 3Características Adminsitración SQL Server 2012 Parte 3
Características Adminsitración SQL Server 2012 Parte 3
 
70 462 Instalación SQL Server 2012
70 462 Instalación SQL Server 201270 462 Instalación SQL Server 2012
70 462 Instalación SQL Server 2012
 
Instalación de Sql server 2014 ctp2 sobre azure
Instalación de Sql server 2014 ctp2 sobre azureInstalación de Sql server 2014 ctp2 sobre azure
Instalación de Sql server 2014 ctp2 sobre azure
 
XQuery y XPath for SQL Server 2012 itpros dc_chapter6
XQuery y XPath for SQL Server 2012 itpros dc_chapter6XQuery y XPath for SQL Server 2012 itpros dc_chapter6
XQuery y XPath for SQL Server 2012 itpros dc_chapter6
 
Agrupando datos en SQL Server
Agrupando datos en SQL ServerAgrupando datos en SQL Server
Agrupando datos en SQL Server
 

Fundamentos sql server2

  • 1. Introducción a SQL Julián Castiblanco P. Julian_castiblancop@hotmail.com Líder ITPros-DC MCITP DatabaseAdministrator SQL Server2008 MCTS DatabaseDeveloper SQL Server 2008 Microsoft Certified Training
  • 2. Agenda del Ciclo Primera Sesión:Modelos RelacionalesNormalizaciónEjemplo Segunda Sesión:Creación de Bases de datosCreación de TablasCreación de restriccionesIntroducción a Transact SQLEjemplo Tercera Sesión:Creación de ProcedimientosCreación de VistasSeguridad de Bases de datos
  • 3. Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
  • 4. Como se guarda la información en SQL Server 1 3 4 2 Cliente Archivo de Log Transaccional *.LDF Archivo de Datos *.MDF, *. NDF Servidor de Base De Datos sqlservr.exe
  • 5. Como se guarda la información en SQL Server C:rogram Files (x86)icrosoft SQL ServerSSQL10_50.SQLEXPRESSSSQLATA
  • 6. Bases de datos Distribución Física Distribución Lógica MDF, NDF Filegroup 1 T1 T3 T4 Filegroup 2 T2 LDF
  • 8. Creación de la base de datos CREATE DATABASE [Facturacion] ON PRIMARY ( NAME = N'Facturacion', FILENAME = N'C:rogram Files (x86)icrosoft SQL ServerSSQL10_50.SQLEXPRESSSSQLATAacturacion.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) LOG ON ( NAME = N'Facturacion_log', FILENAME = N'C:rogram Files (x86)icrosoft SQL ServerSSQL10_50.SQLEXPRESSSSQLATAacturacion_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%) GO
  • 9. Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
  • 10. Creación de Tablas USE Facturacion GO CREATE TABLEdbo.Producto ( id smallint NOT NULL, name varchar(69) NOT NULL ) ON [PRIMARY] GO
  • 11. Creación de Tablas sp_helpProducto GO ALTER TABLE dbo.Producto ADD precio numeric(12,2) go Función de sistema para verificar estructura de Objetos
  • 12. Tipos de Datos Numerics
  • 13. Tipos de Datos Character Strings Date & Time
  • 14. Tipos de Datos Approximate Numerics Binary
  • 16. Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
  • 17. Restricciones Llave Primaria Tipo especial de restricción que identifica a una o varias columnas que permiten identificar como único a un registro en una tabla. Llave Foránea Establece y forza la relación entre tablas. Ayudan a mantener la integridad referencial.
  • 18. Restricciones Llave Primaria CREATE TABLE Ciudad ( CiudadIDint NOT NULL PRIMARY KEY, CiudadNombrevarchar(40) NOT NULL) CREATE TABLE Person.EducationType (EducationTypeIDint NOT NULL, EducationTypeNMvarchar(40) NOT NULL) ALTER TABLEPerson.EducationType ADD CONSTRAINT PK_EducationType PRIMARY KEY (EducationTypeID) Cuando la tabla ya existe!!!
  • 19. Restricciones Llave Foránea CREATE TABLE Person.EmergencyContact ( EmergencyContactIDint NOT NULL PRIMARY KEY, BusinessEntityIDint NOT NULL, ContactFirstNMvarchar(50) NOT NULL, ContactLastNMvarchar(50) NOT NULL, ContactPhoneNBRvarchar(25) NOT NULL) ALTER TABLE Person.EmergencyContact ADD CONSTRAINTFK_EmergencyContact_Employee FOREIGN KEY (BusinessEntityID) REFERENCESHumanResources.Employee (BusinessEntityID)
  • 20. Restricciones Llave Artificial Son llaves no propiamente del negocio utilizadas normalmente para identificar a un registro como único en una tabla. CREATE TABLEFactura (FacturaIDint NOT NULL IDENTITY(1,1)PRIMARY KEY, ClienteIDint NOT NULL , VendedorIDintNOT NULL, fechadatetime NOT NULL DEFAULT GETDATE())
  • 21. El documento no es la llave principal de la tabla, pero debe ser único Restricciones UniqueConstraint Además de tener la llave primera, podríamos requerir que algunas columnas fueran únicas en nuestra tabla. CREATE TABLE dbo.Cliente ( ClienteIDint NOT NULL IDENTITY(1,1) PRIMARY KEY, Nombre varchar(90) NOT NULL, Documentovarchar(90) NOT NULL UNIQUE)
  • 22. Restricciones CheckConstraint Valida que los datos a guardarse en una columna, cumplan ciertas reglas. CREATE TABLE Empleado( EmpleadoIDint NOT NULL PRIMARY KEY, Nombre varchar(59) NOT NULL, ProfesionIDint NULL, Salario numeric(12,2) NOT NULL CHECK(Salario> 1 AND GPA <=10000000))
  • 23. Restricciones Default Constraint Si no se ingresa valor al momento de ingresar el registro, el sistema guarda uno por defecto. CREATE TABLE Empleado ( EmpleadoIDint NOT NULL PRIMARY KEY, Nombre varchar(90) NOT NULL, FechaVinculacionsmalldatetimeNOT NULL DEFAULT GETDATE(), Salario numeric(12,2) NOT NULL )
  • 25. Agenda de la Sesión Creación de Bases de Datos Creación de Tablas Creación de Restricciones Introducción a Transact SQL
  • 26. SQL SELECT Sentencia que permite traer de la base de datos la información almacenada en las tablas. Devuelve todas las columnas SELECT nombre, Documento, Salario FROM dbo.Empleado SELECT * FROM dbo.Empleado
  • 27. SQL SELECT…FROM…WHERE La clausula WHERE permite condicionar los resultados recibidos de una consulta. SELECT nombre, Documento, Salario FROM dbo.Empleado WHERE Documento=80222075 SELECT * FROM dbo.Empleado WHERE Genero=‘F’ AND Salario>5000000
  • 28. SQL Negación de Condición Permite negar condiciones en la clausula WHERE. SELECT * FROM dbo.Empleado WHERENOTGenero=‘M’ AND Salario>5000000
  • 29. SQL
  • 30. SQL Subconsultas Permiten que el resultado de una consulta sea parte de la condición para otra consulta SELECT DISTINCT s.PurchaseOrderNumber FROM Sales.SalesOrderHeader s WHERE EXISTS ( SELECT SalesOrderID FROM Sales.SalesOrderDetail WHERE UnitPrice BETWEEN 1000 AND 2000 AND SalesOrderID = s.SalesOrderID)
  • 31. Fuentes https://www.microsoftmva.com/ http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt SQL and RelationalTheory. C.J. Date. Junio 2009 SQL Server 2008 Transact-SQL Recipes. Joseph Sack. 2008