question sur date sous oracle oriente object
Bonjour, je ne suis pas sure d'être dans le bon partie de forum mais je la pose comme même donc veuillez m'excuser si je me suis trompé.
voicla j'ai une question actuellement j'ai crée des table et des type
comme ci-dessous
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
CREATE or REPLACE TYPE PERSONNEL AS object
(
id number(5),
nom varchar(20),
prenom varchar(20),
datenaiss DATE,
adresse varchar(80),
MEMBER PROCEDURE ajouter,
MEMBER FUNCTION getage(age IN NUMBER) RETURN NUMBER,
MEMBER PROCEDURE afficherinfo,
MEMBER FUNCTION modifadresse(adresse IN VARCHAR) RETURN VARCHAR
) instantiable not final;
/
CREATE TABLE absence_tb of absence(
constraint tababs_id primary key(id)
)
/
CREATE or replace TYPE BODY PERSONNEL as
(
MEMBER PROCEDURE ajouter is
begin
insert into personnel_tb (seq_personnel_tb.nextval,nom,prenom,datenaiss,adresse);
end;
MEMBER FUNCTION getage(age IN NUMBER) RETURN NUMBER is
begin
return(sysdate-datenaiss);
end; |
voici ma question :
je souhaiterai savoir si la function getage est bien ecrite et si non savoir comment le corriger.
Merci
question sur oracle oriente object
Bonjour, je ne suis pas sure d'être dans le bon partie de forum mais je la pose comme même donc veuillez m'excuser si je me suis trompé.
voicla j'ai une question actuellement j'ai crée des table et des type
comme ci-dessous
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
CREATE or REPLACE TYPE PERSONNEL AS object
(
id number(5),
nom varchar(20),
prenom varchar(20),
datenaiss DATE,
adresse varchar(80),
MEMBER PROCEDURE ajouter,
MEMBER FUNCTION getage(age IN NUMBER) RETURN NUMBER,
MEMBER PROCEDURE afficherinfo,
MEMBER FUNCTION modifadresse(adresse IN VARCHAR) RETURN VARCHAR
) instantiable not final;
/
drop table personnel_tb;
CREATE TABLE personnel_tb of personnel (
constraint tabperso_id primary key(id)
)
/
CREATE or replace TYPE BODY PERSONNEL as
(
MEMBER PROCEDURE ajouter is
begin
insert into personnel_tb (seq_personnel_tb.nextval,nom,prenom,datenaiss,adresse);
end;
MEMBER FUNCTION getage(age IN NUMBER) RETURN NUMBER is
begin
return(sysdate-datenaiss);
end; |
voici ma question :
je souhaiterai savoir si la function getage est bien ecrite et si non savoir comment le corriger.
Merci
errueur PLS-00103 lors de lancement de mon script
bonsoir,
lorsque je lance ce scripte j'ai un message d'erreur PLS-00103 sur la ligne 10/13 et 11/1 et je ne comprend pas pourquoi elle me donne cette errueur.
Merci de votre aide.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| Drop sequence seq_personnel_tb;
CREATE Sequence seq_personnel_tb START WITH 1 INCREMENT BY 1;
CREATE or replace TYPE BODY PERSONNEL as
MEMBER PROCEDURE ajouter is
begin
insert into personnel_tb values (seq_personnel_tb.nextval,'nom','prenom',TO_date('12/10/1984','DD/MM/RRRR'),'adresse');
end;
MEMBER FUNCTION getage(age IN NUMBER) RETURN NUMBER is
date_auj number;
date_anni number;
begin
date_auj := select to_char(sysdate,'rrrr') from dual;
date_anni := select to_char(datenaiss,'rrrr') from personnel_tb where id = '2';
return (date_auj-date_anni);
end;
MEMBER PROCEDURE afficherinfo is
perso varchar;
begin
perso := select (id,nom,prenom,datenaiss,adresse) from personnel where id = '2';
dbms_output.put_line(perso);
end;
MEMBER FUNCTION modifadresse(adresse IN VARCHAR) RETURN VARCHAR is
begin
update personnel set adresse="modif" where id ="2";
end;
end;
/ |