Your SlideShare is downloading. ×
0
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Unidad iv ddl
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Unidad iv ddl

384

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
384
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Unidad IV :- Introducción al lenguaje SQL.Se analizará el sublenguaje DDL (DataDefinition Language) para la creaciónde base de datos y tablas utilizandoSQL. 1
  • 2. IntroducciónEl lenguaje de consulta estructurado (SQL) es unlenguaje de base de datos normalizado, utilizado por losdiferentes motores de bases de datos para realizardeterminadas operaciones sobre los datos o sobre laestructura de los mismos. Pero como sucede concualquier sistema de normalización hay excepciones paracasi todo; de hecho, cada motor de bases de datos tienesus peculiaridades y lo hace diferente de otro motor, porlo tanto, el lenguaje SQL normalizado (ANSI) no nosservirá para resolver todos los problemas, aunque si sepuede asegurar que cualquier sentencia escrita en ANSIserá interpretable por cualquier motor de datos.M.C. Daniel Esparza Soto 2
  • 3. Breve HistoriaLa historia de SQL (que se pronuncia deletreandoen inglés las letras que lo componen, es decir"ese-cu-ele" y no "siquel" como se oye amenudo) empieza en 1974 con la definición, porparte de Donald Chamberlin y de otraspersonas que trabajaban en los laboratorios deinvestigación de IBM, de un lenguaje para laespecificación de las características de las basesde datos que adoptaban el modelo relacional.Este lenguaje se llamaba SEQUEL (StructuredEnglish Query Language) y se implementó en unprototipo llamado SEQUEL-XRM entre 1974 y1975.M.C. Daniel Esparza Soto 3
  • 4. Breve HistoriaLas experimentaciones con ese prototipocondujeron, entre 1976 y 1977, a una revisión dellenguaje (SEQUEL/2), que a partir de esemomento cambió de nombre por motivos legales,convirtiéndose en SQL. El prototipo (System R),basado en este lenguaje, se adoptó y utilizóinternamente en IBM y lo adoptaron algunos desus clientes elegidos.M.C. Daniel Esparza Soto 4
  • 5. Breve HistoriaA partir de 1981, IBM comenzó a entregar susproductos relacionales y en 1983 empezó avender DB2. En el curso de los años ochenta,numerosas compañías (por ejemplo Oracle ySybase, sólo por citar algunos) comercializaronproductos basados en SQL, que se convierte enel estándar industrial de hecho por lo querespecta a las bases de datos relacionales. iM.C. Daniel Esparza Soto 5
  • 6. Breve HistoriaEn 1986, el ANSI adoptó SQL (sustancialmente adoptó eldialecto SQL de IBM) como estándar para los lenguajesrelacionales y en 1987 se transfomó en estándar ISO.Esta versión del estándar va con el nombre de SQL/86.En los años siguientes, éste ha sufrido diversas revisionesque han conducido primero a la versión SQL/89 y,posteriormente, a la actual SQL/92.El hecho de tener un estándar definido por un lenguajepara bases de datos relacionales abre potencialmente elcamino a la intercomunicabilidad entre todos losproductos que se basan en él.M.C. Daniel Esparza Soto 6
  • 7. Componentes del SQLEl lenguaje SQL está compuesto por comandos,cláusulas, operadores y funciones de agregado.Estos elementos se combinan en las instrucciones paracrear, actualizar y manipular las bases de datos.Existen dos tipos de comandos SQL:DDL(Data Definition Langiage) que permiten crear ydefinir nuevas bases de datos, campos e índices.DML(Data Manipulation Language) que permitengenerar consultas para ordenar, filtrar y extraer datos dela base de datos.M.C. Daniel Esparza Soto 7
  • 8. SQL Serveres un sistema de gestión de base de datosrelacionales (SGDB) basada en el lenguaje SQL,capaz de poner a disposición de muchos usuariosgrandes cantidades de datos de manera simultánea.Microsoft SQL Server constituye la alternativa deMicrosoft a otros potentes sistemas gestores debases de datos como son Oracle, Sybase ASE oMySQL.Este sistema incluye una versión reducida, llamadaMSDE con el mismo motor de base de datos peroorientado a proyectos más pequeños, que en suversión 2005 pasa a ser el SQL Express Edition.M.C. Daniel Esparza Soto 8
  • 9. Ventajas de SQL Server Soporte de transacciones. Escalabilidad, estabilidad y seguridad. Soporta procedimientos almacenados. Incluye también un potente entorno gráfico de administración, que permite el uso de comandos DDL y DML gráficamente. Permite trabajar en modo cliente-servidor donde la información y datos se alojan en el servidor y las terminales o clientes de la red sólo acceden a la información. Además permite administrar información de otros servidores de datos.M.C. Daniel Esparza Soto 9
  • 10. Componentes de SQL ServerAdministrador de serviciosEs la herramienta que se utiliza para ejecutar elservicio de SQL Server y tener disponibles lasBD. Cuenta también con los siguientes servicios:1.- Coordinador de Transacciones Distribuidas.2.- SQL Server Agent.3.- SQL Server.M.C. Daniel Esparza Soto 10
  • 11. Componentes de SQL Server Administrador corporativo: Es la herramienta gráfica que se utiliza para administrar todos los objetos dentro del servidor. Analizador de consultas: Es la herramienta de texto mediante la cual se administra el servidor utilizando todas las instrucciones SQL.M.C. Daniel Esparza Soto 11
  • 12. Componentes del SQLEl lenguaje SQL está compuesto por comandos,cláusulas, operadores y funciones de agregado.Estos elementos se combinan en las instrucciones paracrear, actualizar y manipular las bases de datos.Existen dos tipos de comandos SQL:DDL(Data Definition Language) que permiten creary definir nuevas bases de datos, campos e índices.DML(Data Manipulation Language) que permitengenerar consultas para ordenar, filtrar y extraer datos dela base de datos.M.C. Daniel Esparza Soto 12
  • 13. DDL(Data Definition Language)1.- Creación de base de datos.2.- Creación de tablas.3.- Integridad referencial: - Llave primaria (Primary Key). - Llave externa (Foreign Key). - Llave única (Unique Constraint). - Restricción de comprobación (Check Constraint). - Restricción de valor predefinido (Default Constraint).M.C. Daniel Esparza Soto 13
  • 14. 1.- Creación de base de datos.Las bases de datos utilizan dos archivos:a.- Archivo de datos: archivo principaldonde se guarda la información de la BD.Son archivos físicos con extensión MDF sies archivo primario y con extensión NDF sies archivo secundario.b.- Archivo del registro de transacciones:es el archivo donde se guardarán lastransacciones que ocurren en el servidor,tienen una extensión LDF.M.C. Daniel Esparza Soto 14
  • 15. 1.- Creación de base de datos.CREATE DATABASE nombreBDON( NAME = nombre_lógico,FILENAME = nombre_físico,SIZE = tamaño ,MAXSIZE = tamañomax ,FILEGROWTH = FactorCrecimiento )LOG ON( NAME = nombreLogico_log ,FILENAME = nombre_físico_Log,SIZE = tamaño ,MAXSIZE = tamañomax ,FILEGROWTH = FactorCrecimiento ) 15M.C. Daniel Esparza Soto
  • 16. 1.- Creación de base de datos.CREATE DATABASE Ventas ON( NAME = Ventas_dat ,FILENAME = c:Archivos de programamicrosoft sqlservermssqldata Ventas_dat.mdf,SIZE = 10,MAXSIZE = 50,FILEGROWTH = 5 )LOG ON( NAME = VEntas_log,FILENAME = c:Archivos de programamicrosoft sqlservermssqldataVentas_log.ldf,SIZE = 5MB, EjemplosMAXSIZE = 25MB,M.C. Daniel Esparza Soto 16
  • 17. 2.- Creación de tablas.Las tablas almacenan todos los datos de unabase de datos y estan organizadas en filas ycolumnas (registros y campos). Cada columnapuede almacenar un tipo de dato específico deinformación.Cada tabla individual representa una entidad enla BD. Cada fila de la tabla representa unaocurrencia de esa entidad. Concepto Lógico Concepto físico Entidad Tabla Atributo Campo o ColumnaM.C. Daniel Esparza Soto 17
  • 18. 2.- Creación de tablas.Sintaxis para crear tablas sin integridad referencial :Create Table NomTabla (NomColumna TipoDato [ NULL| NOT NULL ] , ...n ) Enteros Exactos Cadena de caracteres bigint char( n )Donde el TipoDato : int Varchar( n ) smallint nText tinyint nchar( n ) Bit nvarchar( n ) Bit nText Decimales y flotantes Fecha Decimal( n , d ) Datetime Numeric( n , d ) smalldatetime float Especiales real timestamp Money Table M.C. Daniel Esparza Soto smallmoney cursor 18
  • 19. DML: Data Manipulation Language1.- Instrucción INSERT.2.- Instrucción DELETE.3.- Instrucción UPDATE.4.- Instrucción SELECT.M.C. Daniel Esparza Soto 19
  • 20. 1.- Instrucción INSERTEsta instrucción añade filas de una en una a una tabla.Variaciones de la instrucción INSERT permiten añadirvarias filas, seleccionando datos de otras tabla oejecutando un procedimiento almacenado. En cualquierde estos casos debe considerar lo siguiente:1.- El numero de columnas de la tabla.2.- El tipo de dato de cada columna.3.- El nombre de las columnas para algunas instruccionesINSERT.4.- Las restricciones y propiedades de cada columna.INSERT [INTO] table_name [(column_list)]VALUES( lista_valores )M.C. Daniel Esparza Soto 20
  • 21. 1.- Instrucción INSERTLa forma mas simple de la instrucción INSERTrequiere un valor para cada columna de la tablaen el orden en que fueron definidas lascolumnas.INSERT [INTO] table_nameVALUES( lista_valores )M.C. Daniel Esparza Soto 21
  • 22. 1.- Instrucción INSERTSi se desea omitir el valor para una columna, esnecesario considerar los siguiente:1.- La columna tiene un valor predeterminado.2.- La columna es una columna identidad.3.- La columna permite nulos.4.- La columna es de tipo timestamp.Para omitir el valor para una columna, entoncesla sintaxis es la siguiente:INSERT [INTO] table_name (column_list)VALUES( lista_valores )M.C. Daniel Esparza Soto 22
  • 23. 1.- Instrucción INSERT: ValorespredeterminadosCuando una columna tiene un valorpredeterminado, al insertar un valor se utiliza lapalabra clave DEFAULT en la lista de valores.INSERT [INTO] table_name (column_list)VALUES( valor1,DEFAULT , valor2, ... )M.C. Daniel Esparza Soto 23
  • 24. 1.- Instrucción INSERT: usando SELECTSi se quieren insertar mas de una fila en una solainstrucción debera tenr una fuente en donde taexistan esas filas. En esta forma de la instrucciónINSERT puede usar una subconsulta paradeterminar las filas de datos que se van ainsertar, el resultado de la subconsulta seconvierte en el conjunto se filas a insertar. Lacantidad de columnas del conjunto resultantedebe concordar con la cantidad de columnas dela tabla, y los tipos de datos deben sercompatibles.INSERT [INTO] table_nameSELECT Lista_Columnas FROM tabla2M.C. Daniel Esparza Soto 24
  • 25. 1.- Instrucción INSERT: usando SPSi un procedimiento almacenado devuelve unsolo conjunto de resultados, y sabe la cantidad ytipo de columnas que contiene éste, puedeutilizar INSERT en una tabla y utilizar losresultados que devolverá ese procedimientoalmacenado.INSERT [INTO] table_nameEXEC SP_NOMBRE [lista_parametros]M.C. Daniel Esparza Soto 25
  • 26. 2.- Instrucción DELETEEsta instrucción permite quitar una o más filas deuna tabla.DELETE [FROM] table_name[WHERE clause]También se permite incluir otra tabla en lainstrucción DELETE par usarla como tabla debusqueda, siendo esta una subconsulta.DELETE [FROM] table_nameWHERE columna in ( subconsulta )M.C. Daniel Esparza Soto 26
  • 27. TRUNCATE TABLELa instrucción DELETE sin cláusula WHERE puedeborrar todas las filas de una tabla, pero también se puedeutilizar la instrucción TRUNCATE TABLE para este fin,pero se tienen las siguientes diferencias:1.- DELETE registra cada fila conforme se borra yTRUNCATE solamente escribe las designaciones depágina y su alcance en el registro de transacciones.2.- TRUNCATE solo puede ser ejecutado por elpropietario de la tabla, un miembro de DB_OWNER oSYSADMIN.3.- Un trigger de DELETE no se activa cuando se utilizaTRUNCATE.4.- TRUNCATE reasigna cualquier valor de identidad devuelta Esparza SotoM.C. Daniel a la inicialización , DELETE no. 27
  • 28. 3.- Instrucción UPDATEEsta instrucción permite cambiar el valor de lascolumnas dentro de una fila.UPDATE table_nameSET column_name1 = valor1[, column_name2 = valor2 ...][WHERE search_conditions]DondeValor = {expression1 | NULL | (select_statement)}M.C. Daniel Esparza Soto 28

×