PLSQL Básico - Procedimientos (stored procedures)

Sdílet
Vložit
  • čas přidán 27. 07. 2012
  • Los procedimientos son almacenados en la base de datos con un nombre identificativo y puede tener o no parametros. Son de las estructuras más importantes junto con los paquetes y funciones.
    declaración básica:
    DECLARE PROCEDURE miprocedure_prc AS
    BEGIN
    ...
    END miprocedure_prc;
    hay 3 tipos de parametros, IN (entrada), OUT (salida), IN OUT (entrada/salida)
    Nota: El nombre de los parametros declarados en el procedimiento no necesariamente tiene que ser igual a los enviados al momento de ejecucion. Ejemplo:
    CREATE PROCEDURE procedure1_prc(p_1 number) ....
    al ser llamado puede ser:
    procedure1_prc(5);
    procedure1_prc(var_1); --- var_1 puede contener cualquier numero
  • Věda a technologie

Komentáře • 38

  • @cojulunlopezfernandamariam6956

    Wow gracias... justo lo que necesitaba!! gracias por los videos...me han ayudado un monton

  • @DanielNietoEscobar
    @DanielNietoEscobar  Před 11 lety

    Oh,, yo tambièn soy partidario del software libre, pero lo que si puedo agregar es que en las grandes empresas si queremos comenzar una carrera exitosa hay que saberle a tecnologias de punta, quizà despuès se pueda aportar en el mundo de software libre, depende de a donde queramos llevar nuestra meta profesional de cualquier manera serìa muy bueno que pudieras apoyarnos con videos de postgres asi tambien darles una checada e incrementar nuestras habilidades, saludos desde Mexico.

  • @olafvivas1955
    @olafvivas1955 Před 4 lety

    Gracias por tus vídeos, he aprendido mucho con ellos.

  • @DanielNietoEscobar
    @DanielNietoEscobar  Před 11 lety

    Hola DaemonDev, Estos videos te serviran bastante para usarlo tambien en Postgresql porque hasta donde se tomaron como base PLSQL de oracle, he revisado declaraciones procedimientos, loops if etc y es lo mismo,, igual hay cambios en cosas muy especificas, pero estaria bien despuès hacer un video de comparaciones en esas partes que pudieran ser diferntes, saludos.

  • @michelperezogando2766
    @michelperezogando2766 Před 10 lety

    Hola daniel Feliz 2014 y muchas felicitaciones y gracias por tus videos, recientemente me estoy iniciando con plSql y tus videos me han sido de muchisima ayuda, espero que en un futuro tambien subas algunos de forms y reports saludosl.

  • @richarmunicosamaniego8216

    Entonces, somos!, dentro de unos dias, me pongo a hacer los videos, solo espero ser tan explicito como lo eres tu y causar y llegar tal como lo haces, entonces quedamos asi.

  • @DanielNietoEscobar
    @DanielNietoEscobar  Před 10 lety

    Que tal Orlando, de hecho tengo pendiente retomar java porque ahorita al no usarlo he perdido pràctica pero una vez que me vuelva a actualizar seguro que si, tambièn es algo que quiero dominar. gracias

  • @Adinelsa
    @Adinelsa Před 7 lety

    Gracias Estimado.. Bien Explicado

  • @Pativerus
    @Pativerus Před 6 lety +1

    Gracias!!! excelente explicación

  • @orlandolabangupioc6066
    @orlandolabangupioc6066 Před 10 lety

    excelente trabajo; felicitaciones !!!

  • @DanielNietoEscobar
    @DanielNietoEscobar  Před 11 lety

    Gracias =) Ojalà te sirva, ya sea para estudio o trabajo siempre aprende nuevas cosas nos mantiene un paso adelante, la clave de esto es planear bien, y saber que todo toma tiempo, y si ya estamos usando ese tiempo pues aprovecharlo y aprender bien.. saludos

  • @alifepereira2705
    @alifepereira2705 Před 8 lety

    great video congratulations, excelente video parabéns !

  • @DanielNietoEscobar
    @DanielNietoEscobar  Před 11 lety

    Hola Rut, gracias y la potencia en realidad del plsql es que se usa como parte central en aplicaciones empresariales como oracle ebs, aunq hay muchos programas customizados. Ojalà luego puedas compartir como lo usas tu para aprender un poco màs, gracias

  • @DanielNietoEscobar
    @DanielNietoEscobar  Před 11 lety

    Hola Pipe, gracias y te comento que los scripts para crear las tablas estan en un video llamado Oracle PLSQL Basico parte 3- Caso Practico fase A , en la seccion de informacion del video,... por ahi tambien hay otro video para que practiques en linea sin instalar nada en tu maquina. saludos

  • @jav11100
    @jav11100 Před 3 lety

    Excelente mi hermano

  • @pipin9533
    @pipin9533 Před 11 lety

    estoy viendo tus vídeos, son muy buenos, por casualidad no tienes subidas la tablas con las que trabajas?
    saludos y creo que fata algo con relación a los trigger :)

  • @orlandolabangupioc6066
    @orlandolabangupioc6066 Před 10 lety

    seria interesante que hicieras tutoriales; como invocar a un SP, una función creada en oracle desde java. Te agradecería bastante

  • @paillalef2
    @paillalef2 Před 10 lety

    muy bueno

  • @MaximumPayne12
    @MaximumPayne12 Před 5 lety +1

    Primero que nada, gracias por la excelente explicación.
    Tengo una duda, ¿por qué es necesario declarar las variables al final en el bloque?, ¿qué sucede si mandas llamar las variables tal como estaban hasta arriba: p_name o p_x ?

    • @DanielNietoEscobar
      @DanielNietoEscobar  Před 5 lety

      Hola Maximum, esas variables que mencionas en realidad son parametros de salida,, valida la parte del OUT., entonces nosotros lo que estamos haciendo es darles un valor a usar cuando se ejecute el procedimiento. Saludos.

  • @diegovargas3306
    @diegovargas3306 Před 6 lety

    Q BUEN VIDEO
    oie podrías subir una función que actualiza total de la factura

  • @OsitoBienBonito
    @OsitoBienBonito Před 7 lety

    Hola Daniel. Muchas gracias por tu explicación.
    Una consulta.
    Según la sintaxis:
    CREATE [OR REPLACE] PROCEDURE procedure_name
    [(parameter_name [IN | OUT | IN OUT ] type [, ...])]
    { IS | AS }
    ...............
    ¿cuándo emplear IS ?, ¿cuándo emplear AS ?

    • @Chris-gl6um
      @Chris-gl6um Před 6 lety

      Es As lo usas para procedimientos almacenados y el IS para cursores explícitos.

  • @cojulunlopezfernandamariam6956

    Hola Daniel, una pregunta? como colocar fechas como parametros en un procedimiento? lo que necesito hacer es: Hacer un procedimiento que guarde los datos de una tabla en otra tabla temporal pero en un rango de fechas (parámetos)

    • @DanielNietoEscobar
      @DanielNietoEscobar  Před 10 lety +1

      Hola Fernanda puedes mandar de esta forma
      create or replace procedure my_proc(p_fecha_in date, p_fecha_fin date) as
      begin
      insert into temp_table(a,b,c,d)
      select a,b,c,d from table1
      where trunc(fecha) between trunc(p_fecha_in) and trunc(p_fecha_fin);
      --
      commit;
      end my_proc;
      aqui estoy considerando dias enteros por eso se le pone el trunc, si por ejemplo tomaras en cuanta la hora del dia entonces quitas el trunc.
      Otro detalle es ,, hay veces que por alguna razon o diseño del programa se guardan fechas en tipos varchar, entonces ahi habria que convertir, espero no sea el caso..
      saludos

  • @carlosquintero9147
    @carlosquintero9147 Před 9 lety

    Hola Daniel ; gracias por los tutoriales, son muy buenos, queria preguntarte esta linea para imprimir el String: " dbms_output.put_line " ¿ Como es en Postgres?. Gracias

    • @DanielNietoEscobar
      @DanielNietoEscobar  Před 9 lety

      Hola que tal no se de postgres pero asi buscando rapido podria ser Raise debug ''Mensaje % '', aVariable;

  • @jasonquesadaporras6382
    @jasonquesadaporras6382 Před 10 lety

    Daniel excelente tutorial, la verdad me salvo para un examen final, una consulta por casualidad no tienes o conoces de algún tuto que muestre como hacer uso de un cursor por referencia y retorno con parámetro de salida desde java?

    • @DanielNietoEscobar
      @DanielNietoEscobar  Před 10 lety

      Gracias Jason, no tengo mucho conocimiento de Java, pero encontrè un link www.idevelopment.info/data/Programming/java/jdbc/PLSQL_and_JDBC/RefCursorExample.java espero te sirva. saludos

    • @jasonquesadaporras6382
      @jasonquesadaporras6382 Před 10 lety

      Daniel Nieto Muchas gracias lo voy a ver

  • @fabianrr
    @fabianrr Před 5 lety

    Hola, podrias poner la presentacion para descargar.

  • @dennisedgararroyolecona1893

    amigo veo que publicaste muuchos videos relacionados a oracle el problema es que no se por donde empezar pues no se cual es tu primer video ni cual es el que le sigue y menos se cual es el ultimo video tuyo :-(

  • @danielv8279
    @danielv8279 Před 7 lety

    Hola que tal! oye tengo un caso, es el siguiente:
    Tengo una tabla_A con campos: cliente, produto y costo.
    Tengo una tabla_B
    Tengo una tabla_C
    Los cuales necesito poner en la tabla_B solo los campos PRODUCTO Y CLIENTE,
    y en la tabla_C solo el campo cliente, de cierta forma necesito separar los campos en diferentes tablas.
    La cuestion es que en la tabla_A el campo "producto" y el campo costo se pueden repetir los nombres de un producto y el costo de un producto pero el cliente no se puede repetir,
    entonces para no hacer redundancia de da nombres y precios de datos entonces separamos el id del cliente en una tabla y precio y producto en otra, para que posteriormente los datos que se podrian repetir esten juntos y no haya redundancia de datos.
    La pregunta es:
    Como se le haría para sacar los datos de la tabla_A y agruparlos en la tabla_B como precio y producto sin repetirlos y en tabla_C poner id del cliente?

    • @DanielNietoEscobar
      @DanielNietoEscobar  Před 7 lety

      Hola Daniel, es un ejercicio usando PLSQL? - Porque puedes hacerlo con un insert from select directo..
      1. Para la tabla b producto y precio ,, un select distinct producto, precio from tabla_a elimina los repetidos y esos los insertas
      2. de la misma manera select distinct cliente from tabla_a elimina repetidos y esto insertas...
      checa eso que te digo de insert from select.. o si es un ejercicio y necesitas usar alguna sentencia en especial o plsql me dices,,
      saludos,
      DN

  • @DanielNietoEscobar
    @DanielNietoEscobar  Před 11 lety

    Dennis buen dia ,, tienes razòn, porfas entra a la lista de mis videos dando click en mi nombre o imagen, al lado izq aparecen listas de reproducciòn, ahi tengo una que contiene segun mi perspectiva la lista de videos plsql ,,, espero lo encuentres y te sea ùtil

  • @richarmunicosamaniego8216

    Se agradece, pero yo lo decia, para el resto, para que tambien miren a postgres como alternativa que ademas es Software Libre, me entiendes, yo ya se lo plpgsql, de hecho trabajo años con eso, bueno igual las gracias, a ver si me queda tiempo y yo mismo hago unos cuantos videos, de todas formas buen trabajo. desde Lima-Perú.

  • @richarmunicosamaniego8216

    v ver si te haces con plpgsql