PB lié a l'administration avec oracle - Windows & Software
MarshPosté le 02-05-2005 à 21:24:22
Bonjour tout le monde, je suis actuellement en train de faire des tests d'administration de base de données sur des machines virtuel avec virtual pc 2004. Les machines que j'utilise sont un serveur Windows 2000 et un client Windows 2000 Pro. Elles sont donc installés sur des machines virtuel ayant des adresses IP différentes de mon OS personnel et donc n'a aucun lien avec mon Hôte. Mon problème est le suivant : Ceci est la procédure ou j'ai le problème : Ma procédure consiste a renseigner dans une table d'un utilisateur production le num immatriculation d'un ouvrier, le projet travaillé et le nombre d'heure total de cette ouvrier pour ce projet.(d'où le DBLBase_prod qui est un lien DBl de l'utilisateur Base (ou son référencé toute les base) et prod ou est référencé la table ke l'on souhaite completer.
create or replace procedure TotTrav (proc_immat string,proc_proj string) is HeureTot number(3); Immatricule Char(5);
begin
select numimmat into Immatricule <= je fais un test pour vérifier que ma from HeureProj@DBLBASE_prod table n'est pas renseigner. si elle est where numimmat = proc_immat renseigné je continue sinon je passe a and CodProjet = proc_proj; exception
select sum(nbHeureProj) into HeureTot <= si elle est renseigner j'utilise les from Travailler t elements de la procedure pour recuperer where t.numimmatricule = proc_immat l'heure total d'un ouvrier pour un and t.codeProjet = proc_proj; projet donné
update HeureProj@DBLBASE_prod <= ensuite je fais une mise a jour de la set heuretotal=heuretot valeur heure total where numimmat=proc_immat and codProjet=proc_proj;
exception when NO_DATA_FOUND Then select sum(nbHeureProj) into HeureTot from Travailler t where t.numimmatricule = proc_immat and t.codeProjet = proc_proj;
insert into HeureProj@DBLBASE_prod values <=mon problème est ici car (proc_immat,proc_proj,HeureTot); lorsque je rentre les valeurs,le numéro d'immatricule de l'ouvrier et le projet est renseigné dans la table HeureProj mais pas le nombre de l'heure total travaillé.
end;
j'ai testé le select avec la sum des heureproj pour voir si cela me donnai les valeur souhaiter et c le cas. Puis j'ai essayer de remplacer la variable HeureTot par la valeur 5 pour vérifier si cela venait de la variable mais cela n'a rien changé. Donc je voudrais savoir d'ou vient le problème.
merci d'avance si vous pouviez résoudre mon problème.
Marsh Posté le 02-05-2005 à 21:24:22
Bonjour tout le monde,
je suis actuellement en train de faire des tests d'administration de base de données sur des machines virtuel avec virtual pc 2004.
Les machines que j'utilise sont un serveur Windows 2000 et un client Windows 2000 Pro.
Elles sont donc installés sur des machines virtuel ayant des adresses IP différentes de mon OS personnel et donc n'a aucun lien avec mon Hôte.
Mon problème est le suivant :
Ceci est la procédure ou j'ai le problème :
Ma procédure consiste a renseigner dans une table d'un utilisateur production le num immatriculation d'un ouvrier, le projet travaillé et le nombre d'heure total de cette ouvrier pour ce projet.(d'où le DBLBase_prod qui est un lien DBl de l'utilisateur Base (ou son référencé toute les base) et prod ou est référencé la table ke l'on souhaite completer.
create or replace procedure TotTrav (proc_immat string,proc_proj string) is
HeureTot number(3);
Immatricule Char(5);
begin
select numimmat into Immatricule <= je fais un test pour vérifier que ma
from HeureProj@DBLBASE_prod table n'est pas renseigner. si elle est
where numimmat = proc_immat renseigné je continue sinon je passe a
and CodProjet = proc_proj; exception
select sum(nbHeureProj) into HeureTot <= si elle est renseigner j'utilise les
from Travailler t elements de la procedure pour recuperer
where t.numimmatricule = proc_immat l'heure total d'un ouvrier pour un
and t.codeProjet = proc_proj; projet donné
update HeureProj@DBLBASE_prod <= ensuite je fais une mise a jour de la
set heuretotal=heuretot valeur heure total
where numimmat=proc_immat and codProjet=proc_proj;
exception
when NO_DATA_FOUND Then
select sum(nbHeureProj) into HeureTot
from Travailler t
where t.numimmatricule = proc_immat
and t.codeProjet = proc_proj;
insert into HeureProj@DBLBASE_prod values <=mon problème est ici car
(proc_immat,proc_proj,HeureTot); lorsque je rentre les
valeurs,le numéro d'immatricule de l'ouvrier et le projet est renseigné dans la table HeureProj mais pas le nombre de l'heure total travaillé.
end;
j'ai testé le select avec la sum des heureproj pour voir si cela me donnai les valeur souhaiter et c le cas.
Puis j'ai essayer de remplacer la variable HeureTot par la valeur 5 pour vérifier si cela venait de la variable mais cela n'a rien changé.
Donc je voudrais savoir d'ou vient le problème.
merci d'avance si vous pouviez résoudre mon problème.