Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1165 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [PL/SQL]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PL/SQL]

n°1271766
maglight2
Posté le 22-12-2005 à 13:39:56  profilanswer
 

J'ai un type qui est déclaré comme suit :

Code :
  1. Create type Test as object
  2. ( Nom1 varchar(30),
  3.   Prénom1 varchar(30),
  4.   Nom2 varchar(30),
  5.   Prénom2 varchar(30),
  6.   Nom3 varchar(30),
  7.   Prénom3 varchar(30),
  8.   Nom4 varchar(30),
  9.   Prénom4 varchar(30),
  10.   Nom5 varchar(30),
  11.   Prénom5 varchar(30)
  12. )
  13. Create type Table_Test as table of Test


J'ai ensuite une procédure stocké qui utilise Table_Test.
Actuellement, je suis obligé de faire comme suit pour remplir Table_Test :

Code :
  1. Table_Test.Nom1:='A';
  2. Table_Test.Prénom1:='a';
  3. Table_Test.Nom2:='B';
  4. Table_Test.Prénom2:='b';
  5. Table_Test.Nom3:='C';
  6. Table_Test.Prénom3:='c';
  7. Table_Test.Nom4:='D';
  8. Table_Test.Prénom4:='d';
  9. Table_Test.Nom5:='E';
  10. Table_Test.Prénom5:='e';


Est-il possible et si oui comment de faire cela au sein d'une boucle du type :
for i:=1 to 5 do
begin
 Table_Test.Nom(i):='sdflkjkl';
 Table_Test.Prénom(i):='sdflkjkl';
end;
 
Merci d'avance, je débute en PL/SQL.
 

mood
Publicité
Posté le 22-12-2005 à 13:39:56  profilanswer
 

n°1271783
Arjuna
Aircraft Ident.: F-MBSD
Posté le 22-12-2005 à 14:05:02  profilanswer
 

non, c'est impossible.
 
par contre, il me semble que tu dois pouvoir faire une syntaxe de ce type :
 

Code :
  1. select 'A', 'a', 'B', 'b', 'C', 'c', 'D', 'd', 'E', 'e' into table_test from dual;

n°1271795
maglight2
Posté le 22-12-2005 à 14:18:54  profilanswer
 

En fait, je fais :
Table_Test.Nom1:='A1';
Table_Test.Prénom1:='a1';
Table_Test.Nom2:='A2';
Table_Test.Prénom2:='a2';
Table_Test.Nom3:='A3';
Table_Test.Prénom3:='a3';
Table_Test.Nom4:='A4';
Table_Test.Prénom4:='a4';
Table_Test.Nom5:='A5';
Table_Test.Prénom5:='a5';  
 
Est-il possible et si oui comment de faire cela au sein d'une boucle du type :  
for i:=1 to 5 do  
begin  
 Table_Test.Nom(i):='A'+inttostr(i);  
 Table_Test.Prénom(i):='a'+inttostr(i)
end;  
 
Merci d'avance, je débute en PL/SQL.  
 

n°1271815
Arjuna
Aircraft Ident.: F-MBSD
Posté le 22-12-2005 à 14:46:48  profilanswer
 

ich bin répéting : nan, impossible
 
seul truc que tu peux faire, c'est recopier le résultat d'une requête dans ton type.
 
à la limite, tu peux générer dynamiquement ne requête qui retourne tes 10 colonnes, c'est tout ce que tu peux faire


Message édité par Arjuna le 22-12-2005 à 14:47:29

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [PL/SQL]

 

Sujets relatifs
[SQL] un coup de main pour rouler mon join?export de phpmyadmin vers SQL Server
ordonner les resultats d'une requete SQL ![SQL] Sauvegarder un fichier dans un blob ?
Pb de PL SQLPROMPT dans une procédure PL SQL
Hibernate Commande SQL directSQl\excel
Import Export de données dans une BDD SQL et fichier texteSQL Server 2005 Express et Full-text index ?
Plus de sujets relatifs à : [PL/SQL]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR