Diferència entre revisions de la pàgina «Entrega classe 4-abr-2022»

De wikijoan
Salta a la navegació Salta a la cerca
m
Línia 50: Línia 50:
 
Amposta (21115);Calafell (27601);...
 
Amposta (21115);Calafell (27601);...
 
</pre>
 
</pre>
 +
 +
'''NOTA''': missatge ''display all 1450 possibilities?''
 +
*https://stackoverflow.com/questions/15364945/pasting-sql-into-the-mysql-command-line
 +
La culpa és que el codi que estàs copiant conté tabuladors. No passa res.
 
{{Autor}}, abril 2022
 
{{Autor}}, abril 2022

Revisió del 18:58, 4 abr 2022

Tasqies a realitzar

Faràs tres exemples. Els dos primers ja els hem executat a classe, estan en els apunts:

P1: cursor

DELIMITER $$
CREATE PROCEDURE createEmailList (
	INOUT emailList varchar(4000)
)
BEGIN
	DECLARE finished INTEGER DEFAULT 0;
	DECLARE emailAddress varchar(100) DEFAULT "";

	-- declare cursor for employee email
	DEClARE curEmail 
		CURSOR FOR 
			SELECT email FROM employees;

	-- declare NOT FOUND handler
	DECLARE CONTINUE HANDLER 
        FOR NOT FOUND SET finished = 1;

	OPEN curEmail;

	getEmail: LOOP
		FETCH curEmail INTO emailAddress;
		IF finished = 1 THEN 
			LEAVE getEmail;
		END IF;
		-- build email list
		SET emailList = CONCAT(emailAddress,";",emailList);
	END LOOP getEmail;
	CLOSE curEmail;

END$$
DELIMITER ;

P2:

has de crear la taula SupplierProducts i el procediment InsertSupplierProduct()

Serveix per demostrar la gestió d'errors en el cas de què es produeixi un error de clau primera al fer el insert.

P3: municipis.

Crea el procediment llista_tarragona() que doni com a resultat una cadena dels municipis entre 20000 i 40000 habitants, amb el següent format:

Amposta (21115);Calafell (27601);...

NOTA: missatge display all 1450 possibilities?

La culpa és que el codi que estàs copiant conté tabuladors. No passa res.


creat per Joan Quintana Compte, abril 2022