Bonjour à tous,
je tiens à préciser que je débute dans le PL/SQL!!
voila ma config:
apache 1.3
Oracle 9i
PHP 5.0 (pour le moment impossibilite de compiler avec --with-oci et --with-oracle)
voici ce que je veux faire:
j'ai une table commande sur laquelle je dois recuperer des valeurs (c_appli, c_cde, c_post_cde). Pour chacun de ces enregistrements, je dois vérifier si le triplet existe dans la tale facture, et s'il existe, je dois faire une maj de la table.
Je dispose de 2 methodes (soit passer par des fichiers, ce qui est tres couteux en temps, j'ai essayé
)
soit je pense essayer d'ecrire un curseur dans un fichier que j'appelerai avec sqlplus.
j'ai ecrit ceci:
Code :
- . /home/itools/profile_9i.RT
- sqlplus -s <<EOF
- usr/password@PER
- spool essai2
- DECLARE
- CURSOR param is
- select c_post_cde, c_cde, c_appli from commande where c_cd='01' and c_sa='XH' AND c_ent='
- ENTRP00006' and d_cde = to_date ('10/02/2005', 'DD/MM/YYYY');
- var commande%TYPE; //je suis pas sur ici, etant donné que je veux que les 3 fameuses valeurs)
- BEGIN
- OPEN param;
- LOOP
- FETCH param INTO var;
- select count(*) from facture AS f where f.c_appli=var.c_appli and f.c_post_cde=var.c_post_c
- de and f.c_c_cde= var.c_cde;
- //et c la que je sais pas quoi faire... style comment tester la valeur du count(*)???
- exit when param%NOTFOUND
- end loop;
- end;
- spool off
- EOF
|
si vous pouviez m'aider a remplir le milieu ce serait vraiment super sympa,je galere un peu la...
Merci et desole si cette question peut paraitre stupide, elle ne l'est pas pour moi 

Message édité par nachi2 le 20-06-2005 à 17:59:18