SlideShare una empresa de Scribd logo
1 de 24
Sesión 1 PL/SQL Bloques Ing.  Mauricio Bedoya
Introducción al PL/SQL PL/SQL (Procedural Lenguaje/sql) es un lenguaje de programación que se utiliza para acceder y trabajar con bases de datos Oracle desde distintos entornos. PL/SQL amplía la funcionalidad del lenguaje SQL añadiendo estructuras tipicas de los lenguajes procedimentales, como las variables y los tipos, las estructuras de control, ordenes IF THEN ELSE, etc, los procedimientos y las funciones, los tipos de objetos y los metodos, etc.
Aplicaciones de Bases de Datos  La estructura básica es cliente-servidor formada por un servidor de bases de datos que recibe peticiones de información de programas residentes en maquinas clientes conectadas por la red con el servidor. Las solicitudes se hacen a través de SQL. Para racionalizar este tráfico (imaginemos peticiones desde varios cajeros electrónicos), se utiliza PL/SQL.
¿Y para que sirve? PL/SQL empaqueta varias ordenes SQL en un unico BLOQUE PL/SQL, que se envía al servidor como una unidad. Ventajas:  Disminución de tráfico en la red y aumento de la velocidad de aplicación y respuesta.
¿Bloques? Por tanto, la unidad básica en PL/SQL es el bloque, estando formados los programas por combinaciones de bloques que incluso pueden estar anidados. Cada Bloque realiza una unidad lógica de trabajo en el programa: TRANSACCION!
¿De que se compone un Bloque? Sección Declarativa: Se situan en ellas las variables, cursores y tipos usados por el Bloque. Sección Ejecutable: Se situan en ella las ordenes SQL y las ordenes procedimentales que llevan a cabo el trabajo del bloque. Seccion de excepciones: Tratamiento de errores, no se ejecuta a menos que ocurra un error.
Sintaxis de un programa PL/SQL DECLARE /*Sección declarativa*/ BEGIN /*Sección ejecutable*/ EXCEPTION /*Sección de excepciones*/ END; /
IMPORTANTE Hay que observar que cuando se ejecuta un programa (script) PL/SQL, es necesario finalizar el programa con la barra inclinada / antes de submitirlo.  La unica sección indispensable en un bloque es la sección ejecutable, siendo las otras dos opcionales . Begin End; /
Tipos de Bloques Se pueden distinguir varios tipos de bloques: Bloques Anonimos:  Se ejecutan una sola vez y se contruyen de manera dinámica. Bloque Nominados:  Son bloques anonimos con nombre o etiqueta y solo se ejecutan una sola vez. Subprogramas:  Que son procedimientos, paquetes y funciones almacenados en la base de datos. Disparadores:  Son bloques nominados que se ejecutan de manera implicita cada vez que tiene lugar un suceso de disparo.
Consola PL SQL
Como conectarse a la DBMS? Se puede conectar de varias formas aquí especificaremos una de ellas: Dijitar: Sql> conn system  (_enter) El sistema devolvera: Sql> introduzca la contraseña: (_en este punto se dijita la  contraseña con la que se instalo el  motor y se confirma con enter) Conectado. Sql> _ (_si todo esta bien debe  aparecer la palabra  conectado)
Consola PL SQL
Editando un script
Editando un script Sql>edit <nombre del script sin espacios ni caracteres especiales.> Ejemplo; Sql> edit bases    (_enter)
 
Editando un script Se confirma la operación, así el sistema genera el archivo script con extensión sql y el nombre que le asignamos en la edición: Bases.sql El script es un archivo texto que espera las instrucciones en lenguaje sql del programador y administrador. Cuando se cierre se guardara con la extensión SQL.
Ejemplo de creacion de objetos Tenemos el siguiente modelo relacional: Empleados( id ,nombre,apellido,ndepto) Deptos  ( cd ,descripcion) Los campos subrayados representan las claves primarias. El campo ndepto es la referencia foránea del campo cd en la tabla Deptos. El proposito es implementar el modelo lógico usando la consola de Oracle. Ahora conectese a la consola y cree un script llamado base, aprecie la imagen siguiente donde se digita el código de creación de objetos.  Las lineas de comentario deben iniciar con --.
Creando tablas
Confirmando y guardando
Ejecutando el script
Comprobando el suceso
Comprobando el suceso En caso de presentarse errores, se ingresa de nuevo a la edicion del script Sql>edit base  --enter Ahora bien ya tenemos creados los objetos o tablas, para ver los campos de cada tabla creados por consola se usa el comando describe asi: Sql>describe <nombre_tabla>; Ejemplo: Sql>describe empleado; El simbolo ; en PL SQL denota el fin de una transaccion.
Operaciones DML Usualmente tambien se puede añadir al script una zona de eliminacion  de objetos asi: --zona de eliminacion. Drop table deptos; Drop table empleados; Oracle no diferencia entre mayusculas y minusculas para notacion de sintaxis de script en los objetos. Las operaciones DML como inserciones, modificados o borrados tambien puedes hacerse en el script de creacion o en su defecto otro script diferente que es lo recomendable. Insert into table deptos Values(1,’Contabilidad’); Insert into table empleados Values(90,’Oscar’,’Franco’,1);
? ? ? ? ? Preguntas

Más contenido relacionado

La actualidad más candente (17)

Curso de pl sql básico
Curso de pl sql básicoCurso de pl sql básico
Curso de pl sql básico
 
Statement
StatementStatement
Statement
 
Plsql y paquetes
Plsql y paquetesPlsql y paquetes
Plsql y paquetes
 
Examen Sandra U Israel Oracle
Examen Sandra U Israel OracleExamen Sandra U Israel Oracle
Examen Sandra U Israel Oracle
 
statement
statementstatement
statement
 
Bd 2 1 fundamentos transact sql
Bd 2   1 fundamentos transact sqlBd 2   1 fundamentos transact sql
Bd 2 1 fundamentos transact sql
 
Sesion10 - Funciones y procedimientos (Oracle)
Sesion10 - Funciones y procedimientos (Oracle)Sesion10 - Funciones y procedimientos (Oracle)
Sesion10 - Funciones y procedimientos (Oracle)
 
Lenguaje transact sql
Lenguaje transact sqlLenguaje transact sql
Lenguaje transact sql
 
Intro sql y plsql
Intro sql y plsqlIntro sql y plsql
Intro sql y plsql
 
TRANSACT-SQL
TRANSACT-SQLTRANSACT-SQL
TRANSACT-SQL
 
Introduccion ddl
Introduccion ddlIntroduccion ddl
Introduccion ddl
 
Statement
StatementStatement
Statement
 
Statement
StatementStatement
Statement
 
Statement
StatementStatement
Statement
 
103305862 t-sql
103305862 t-sql103305862 t-sql
103305862 t-sql
 
Preparestatement
PreparestatementPreparestatement
Preparestatement
 
Atrion script 3.0
Atrion script 3.0Atrion script 3.0
Atrion script 3.0
 

Destacado

Procedimiento para estudio de agregados
Procedimiento para estudio de agregadosProcedimiento para estudio de agregados
Procedimiento para estudio de agregadosjeymy
 
Modelacion estructural Muro de Albañilería Armada
Modelacion estructural Muro de Albañilería ArmadaModelacion estructural Muro de Albañilería Armada
Modelacion estructural Muro de Albañilería ArmadaEdson Cabell Torres
 
Relaciones en una base de datos
Relaciones en una base de datosRelaciones en una base de datos
Relaciones en una base de datoskabinfive
 
Modelo entidad relación de base de datos
Modelo entidad relación de base de datosModelo entidad relación de base de datos
Modelo entidad relación de base de datosani_tuza
 
40 Actividades para administrar su negocio en Internet.
40 Actividades para administrar su negocio en Internet. �40 Actividades para administrar su negocio en Internet. �
40 Actividades para administrar su negocio en Internet. Luis Chaquea
 
10 Curiosidades de Facebook en sus 10 años
10 Curiosidades de Facebook en sus 10 años10 Curiosidades de Facebook en sus 10 años
10 Curiosidades de Facebook en sus 10 añosLuis Chaquea
 
ADOBE DIGITAL EDITIONS
ADOBE DIGITAL EDITIONSADOBE DIGITAL EDITIONS
ADOBE DIGITAL EDITIONSRodrigo
 
8 Meses De Nacida
8 Meses De Nacida8 Meses De Nacida
8 Meses De NacidaGaby0713
 
Week 6
Week 6Week 6
Week 6kkuss
 
Vocabulaire du collégien de a à c de d à f
Vocabulaire du collégien de a à c de d à fVocabulaire du collégien de a à c de d à f
Vocabulaire du collégien de a à c de d à fAhmed Massoudy
 
Comment Dynamiser l' AGOA au Gongo Kinshasa
Comment Dynamiser l' AGOA au  Gongo KinshasaComment Dynamiser l' AGOA au  Gongo Kinshasa
Comment Dynamiser l' AGOA au Gongo Kinshasajoelnshisso
 
Forum Social Esp
Forum Social EspForum Social Esp
Forum Social Espkrugerar
 
Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"
Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"
Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"Hop'Toys
 
Nouveautés ca 1.4 cbbd 15 mai
Nouveautés ca 1.4 cbbd 15 maiNouveautés ca 1.4 cbbd 15 mai
Nouveautés ca 1.4 cbbd 15 maiGautier Michelin
 

Destacado (20)

Procedimiento para estudio de agregados
Procedimiento para estudio de agregadosProcedimiento para estudio de agregados
Procedimiento para estudio de agregados
 
Modelacion estructural Muro de Albañilería Armada
Modelacion estructural Muro de Albañilería ArmadaModelacion estructural Muro de Albañilería Armada
Modelacion estructural Muro de Albañilería Armada
 
Relaciones en una base de datos
Relaciones en una base de datosRelaciones en una base de datos
Relaciones en una base de datos
 
Informe granulometria de los agregados
Informe granulometria de los agregadosInforme granulometria de los agregados
Informe granulometria de los agregados
 
Modelo entidad relación de base de datos
Modelo entidad relación de base de datosModelo entidad relación de base de datos
Modelo entidad relación de base de datos
 
40 Actividades para administrar su negocio en Internet.
40 Actividades para administrar su negocio en Internet. �40 Actividades para administrar su negocio en Internet. �
40 Actividades para administrar su negocio en Internet.
 
10 Curiosidades de Facebook en sus 10 años
10 Curiosidades de Facebook en sus 10 años10 Curiosidades de Facebook en sus 10 años
10 Curiosidades de Facebook en sus 10 años
 
Noticias Agosto 09
Noticias Agosto 09Noticias Agosto 09
Noticias Agosto 09
 
ADOBE DIGITAL EDITIONS
ADOBE DIGITAL EDITIONSADOBE DIGITAL EDITIONS
ADOBE DIGITAL EDITIONS
 
Bfbk mouans sartoux 2
Bfbk mouans sartoux 2Bfbk mouans sartoux 2
Bfbk mouans sartoux 2
 
canton echeandia
canton echeandiacanton echeandia
canton echeandia
 
8 Meses De Nacida
8 Meses De Nacida8 Meses De Nacida
8 Meses De Nacida
 
Week 6
Week 6Week 6
Week 6
 
Vocabulaire du collégien de a à c de d à f
Vocabulaire du collégien de a à c de d à fVocabulaire du collégien de a à c de d à f
Vocabulaire du collégien de a à c de d à f
 
Comment Dynamiser l' AGOA au Gongo Kinshasa
Comment Dynamiser l' AGOA au  Gongo KinshasaComment Dynamiser l' AGOA au  Gongo Kinshasa
Comment Dynamiser l' AGOA au Gongo Kinshasa
 
Forum Social Esp
Forum Social EspForum Social Esp
Forum Social Esp
 
Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"
Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"
Extrait du livre "LES NOEUDS DANS LA GORGE D'ARIANE"
 
Piensa 1
Piensa 1Piensa 1
Piensa 1
 
Nouveautés ca 1.4 cbbd 15 mai
Nouveautés ca 1.4 cbbd 15 maiNouveautés ca 1.4 cbbd 15 mai
Nouveautés ca 1.4 cbbd 15 mai
 
Giss 2009 Final
Giss 2009 FinalGiss 2009 Final
Giss 2009 Final
 

Similar a Bloques (20)

Bloques
BloquesBloques
Bloques
 
APLICACIONES EMPRESARIALES
APLICACIONES EMPRESARIALESAPLICACIONES EMPRESARIALES
APLICACIONES EMPRESARIALES
 
t-sql
t-sqlt-sql
t-sql
 
Sql Procedural
Sql ProceduralSql Procedural
Sql Procedural
 
Sesion06b - Introducción al PL-SQL (Oracle)
Sesion06b - Introducción al PL-SQL (Oracle)Sesion06b - Introducción al PL-SQL (Oracle)
Sesion06b - Introducción al PL-SQL (Oracle)
 
F004 p006-gfpi guia de aprendizaje 1-fundamentosde sql
F004 p006-gfpi guia de aprendizaje 1-fundamentosde sqlF004 p006-gfpi guia de aprendizaje 1-fundamentosde sql
F004 p006-gfpi guia de aprendizaje 1-fundamentosde sql
 
SQLDeveloper_Manual_de_usuario_v1_2.pdf
SQLDeveloper_Manual_de_usuario_v1_2.pdfSQLDeveloper_Manual_de_usuario_v1_2.pdf
SQLDeveloper_Manual_de_usuario_v1_2.pdf
 
Sql developer. manual de usuario v1.2
Sql developer. manual de usuario v1.2Sql developer. manual de usuario v1.2
Sql developer. manual de usuario v1.2
 
Lenguaje Transact SQL
Lenguaje Transact SQL Lenguaje Transact SQL
Lenguaje Transact SQL
 
Doris aguagallo bdii_t7
Doris  aguagallo bdii_t7Doris  aguagallo bdii_t7
Doris aguagallo bdii_t7
 
Visual basic .NET
Visual basic .NETVisual basic .NET
Visual basic .NET
 
Introduccion ddl
Introduccion ddlIntroduccion ddl
Introduccion ddl
 
Introduccion ddl
Introduccion ddlIntroduccion ddl
Introduccion ddl
 
Transac sq ll
Transac sq llTransac sq ll
Transac sq ll
 
Saula ana bdii_t7
Saula ana bdii_t7Saula ana bdii_t7
Saula ana bdii_t7
 
Yupa cesar 6_s_t1_2
Yupa cesar 6_s_t1_2Yupa cesar 6_s_t1_2
Yupa cesar 6_s_t1_2
 
Yupa cesar bdii_t7
Yupa cesar bdii_t7Yupa cesar bdii_t7
Yupa cesar bdii_t7
 
Sql access
Sql accessSql access
Sql access
 
Lenguaje Transact-SQL
Lenguaje Transact-SQLLenguaje Transact-SQL
Lenguaje Transact-SQL
 
Lozano william bdii_t7
Lozano william bdii_t7Lozano william bdii_t7
Lozano william bdii_t7
 

Más de Mauricio Bedoya (7)

Bi2021.pptx
Bi2021.pptxBi2021.pptx
Bi2021.pptx
 
Dashboard.pptx
Dashboard.pptxDashboard.pptx
Dashboard.pptx
 
Herramientas BigData.pptx
Herramientas BigData.pptxHerramientas BigData.pptx
Herramientas BigData.pptx
 
Objetivos
ObjetivosObjetivos
Objetivos
 
Trigger
TriggerTrigger
Trigger
 
Proceyfunc
ProceyfuncProceyfunc
Proceyfunc
 
Control
ControlControl
Control
 

Bloques

  • 1. Sesión 1 PL/SQL Bloques Ing. Mauricio Bedoya
  • 2. Introducción al PL/SQL PL/SQL (Procedural Lenguaje/sql) es un lenguaje de programación que se utiliza para acceder y trabajar con bases de datos Oracle desde distintos entornos. PL/SQL amplía la funcionalidad del lenguaje SQL añadiendo estructuras tipicas de los lenguajes procedimentales, como las variables y los tipos, las estructuras de control, ordenes IF THEN ELSE, etc, los procedimientos y las funciones, los tipos de objetos y los metodos, etc.
  • 3. Aplicaciones de Bases de Datos La estructura básica es cliente-servidor formada por un servidor de bases de datos que recibe peticiones de información de programas residentes en maquinas clientes conectadas por la red con el servidor. Las solicitudes se hacen a través de SQL. Para racionalizar este tráfico (imaginemos peticiones desde varios cajeros electrónicos), se utiliza PL/SQL.
  • 4. ¿Y para que sirve? PL/SQL empaqueta varias ordenes SQL en un unico BLOQUE PL/SQL, que se envía al servidor como una unidad. Ventajas: Disminución de tráfico en la red y aumento de la velocidad de aplicación y respuesta.
  • 5. ¿Bloques? Por tanto, la unidad básica en PL/SQL es el bloque, estando formados los programas por combinaciones de bloques que incluso pueden estar anidados. Cada Bloque realiza una unidad lógica de trabajo en el programa: TRANSACCION!
  • 6. ¿De que se compone un Bloque? Sección Declarativa: Se situan en ellas las variables, cursores y tipos usados por el Bloque. Sección Ejecutable: Se situan en ella las ordenes SQL y las ordenes procedimentales que llevan a cabo el trabajo del bloque. Seccion de excepciones: Tratamiento de errores, no se ejecuta a menos que ocurra un error.
  • 7. Sintaxis de un programa PL/SQL DECLARE /*Sección declarativa*/ BEGIN /*Sección ejecutable*/ EXCEPTION /*Sección de excepciones*/ END; /
  • 8. IMPORTANTE Hay que observar que cuando se ejecuta un programa (script) PL/SQL, es necesario finalizar el programa con la barra inclinada / antes de submitirlo. La unica sección indispensable en un bloque es la sección ejecutable, siendo las otras dos opcionales . Begin End; /
  • 9. Tipos de Bloques Se pueden distinguir varios tipos de bloques: Bloques Anonimos: Se ejecutan una sola vez y se contruyen de manera dinámica. Bloque Nominados: Son bloques anonimos con nombre o etiqueta y solo se ejecutan una sola vez. Subprogramas: Que son procedimientos, paquetes y funciones almacenados en la base de datos. Disparadores: Son bloques nominados que se ejecutan de manera implicita cada vez que tiene lugar un suceso de disparo.
  • 11. Como conectarse a la DBMS? Se puede conectar de varias formas aquí especificaremos una de ellas: Dijitar: Sql> conn system (_enter) El sistema devolvera: Sql> introduzca la contraseña: (_en este punto se dijita la contraseña con la que se instalo el motor y se confirma con enter) Conectado. Sql> _ (_si todo esta bien debe aparecer la palabra conectado)
  • 14. Editando un script Sql>edit <nombre del script sin espacios ni caracteres especiales.> Ejemplo; Sql> edit bases (_enter)
  • 15.  
  • 16. Editando un script Se confirma la operación, así el sistema genera el archivo script con extensión sql y el nombre que le asignamos en la edición: Bases.sql El script es un archivo texto que espera las instrucciones en lenguaje sql del programador y administrador. Cuando se cierre se guardara con la extensión SQL.
  • 17. Ejemplo de creacion de objetos Tenemos el siguiente modelo relacional: Empleados( id ,nombre,apellido,ndepto) Deptos ( cd ,descripcion) Los campos subrayados representan las claves primarias. El campo ndepto es la referencia foránea del campo cd en la tabla Deptos. El proposito es implementar el modelo lógico usando la consola de Oracle. Ahora conectese a la consola y cree un script llamado base, aprecie la imagen siguiente donde se digita el código de creación de objetos. Las lineas de comentario deben iniciar con --.
  • 22. Comprobando el suceso En caso de presentarse errores, se ingresa de nuevo a la edicion del script Sql>edit base --enter Ahora bien ya tenemos creados los objetos o tablas, para ver los campos de cada tabla creados por consola se usa el comando describe asi: Sql>describe <nombre_tabla>; Ejemplo: Sql>describe empleado; El simbolo ; en PL SQL denota el fin de una transaccion.
  • 23. Operaciones DML Usualmente tambien se puede añadir al script una zona de eliminacion de objetos asi: --zona de eliminacion. Drop table deptos; Drop table empleados; Oracle no diferencia entre mayusculas y minusculas para notacion de sintaxis de script en los objetos. Las operaciones DML como inserciones, modificados o borrados tambien puedes hacerse en el script de creacion o en su defecto otro script diferente que es lo recomendable. Insert into table deptos Values(1,’Contabilidad’); Insert into table empleados Values(90,’Oscar’,’Franco’,1);
  • 24. ? ? ? ? ? Preguntas