Clase 10 de Junio - AGMadera/BasedeDatos2 GitHub Wiki

//////////////////CLASE 10 DE JUNIO

///////////////////////////


CREATE TABLE USUARIO1 (ID_USUARIO1 INTEGER,
 NOMBRE VARCHAR2(120),
 EMAIL VARCHAR2(90), SUELDO_BASE FLOAT,
CONSTRAINT ID_USUARIO1_PK PRIMARY KEY(ID_USUARIO1));

///////////////////////////

create sequence sec_usuario1
start with 1
increment by 1
nomaxvalue;

//////////////////////////

create or replace PROCEDURE GUARDAR_USUARIO1(
MY_ID_USUARIO1 OUT INTEGER, MY_NOMBRE IN VARCHAR2,
MY_EMAIL IN VARCHAR2, MY_SUELDO_BASE IN FLOAT)
AS
BEGIN 
SELECT SEC_USUARIO1.NEXTVAL INTO MY_ID_USUARIO1 FROM DUAL;
INSERT INTO USUARIO1 VALUES(MY_ID_USUARIO1, MY_NOMBRE,
MY_EMAIL, MY_SUELDO_BASE);
END;

/////////////////////////

DECLARE
  MY_ID INTEGER;
BEGIN
  GUARDAR_USUARIO1(MY_ID,'CHANA','[email protected]',6000);
  GUARDAR_USUARIO1(MY_ID,'PANCRACIO','[email protected]',5000);
  GUARDAR_USUARIO1(MY_ID,'PETRONILA','[email protected]',8000);
END;
/

////////////////////////CURSORES 

SET SERVEROUTPUT ON;

DECLARE
ALGO VARCHAR2 (120);
BEGIN
DBMS_OUTPUT.PUT_LINE('Probaremos un cursor implicito');
--cursor implicito
SELECT NOMBRE INTO ALGO FROM USUARIO1 WHERE ID_USUARIO1=1;
DBMS_OUTPUT.PUT_LINE('EN LA MEMORIA GLOBAL ESTA '||ALGO);
END;
/

//////////////////////

DECLARE 
CURSOR CUR_USUARIO1 IS SELECT * FROM USUARIO1;
BEGIN
 FOR REC_USUARIO IN CUR_USUARIO1 LOOP
 DBMS_OUTPUT.PUT_LINE('EN ESTE MOMENTO ESTA EN MEMORIA: '||REC_USUARIO.NOMBRE);
 END LOOP;
END;
/
⚠️ **GitHub.com Fallback** ⚠️