\p CREATE TABLE Produit CREATE CACHED TABLE "Produit" ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL , nom VARCHAR(100) NOT NULL , unité VARCHAR(100) , quantité DECIMAL(100,3) DEFAULT 1.000 NOT NULL , conditionnement VARCHAR(100) , CONSTRAINT "PK_Produit" PRIMARY KEY(ID) , CONSTRAINT "La combinaison (nom, quantité, conditionnement) d'un produit doit être unique" UNIQUE (nom, quantité, conditionnement) ); DROP FUNCTION choisirUnProduit IF EXISTS CASCADE; CREATE FUNCTION choisirUnProduit() RETURNS TABLE(nom_complet VARCHAR(100), ID INTEGER) READS SQL DATA BEGIN ATOMIC RETURN TABLE (SELECT nom || ' (' || RTRIM(RTRIM(TO_CHAR(quantité),'0'),'.') || nvl(unité,'') || ')' AS nom_complet , ID FROM "Produit" ); END; .;