SQL dynamique - Récupérer tous les champs sauf certains
Bonjour à tous,
Je suis en 9i. [PL/SQL]
En fait j'aimerai beaucoup que vous m'aidiez à construire une requête dynamiquement en récupérant les champs de sélection dans la table "user_tab_columns".
En fait le but est de récupérer tous les champs sauf certains.
Code:
1 2
| select * from user_tab_columns where table_name='TARTICLE'
and column_name <> 'ETATOBJET' |
Après la construction de la requête on l'exécute avec EXECUTE IMMEDIATE.
En vous remerciant d'avance.
Boutss
Avantages de EXECUTE IMMEDIATE
En PL/SQL, le recours à EXECUTE IMMEDIATE mysql est nécessaire pour
1) les instructions SQL de DDL (DATA DEFINITION LANGUAGE) comme DROP ou CREATE TABLE.
2) les instructions SQL de DML (DATA MANIPULATION LANGUAGE) comme SELECT ou INSERT lorsque l'on veut construire dynamiquement le SQL en transmettant des valeurs de variables à la clause WHERE.
mysql = 'SELECT * FROM clients WHERE ville = :a;'
EXECUTE IMMEDIATE mysql USING variable_ville;
Dans ton cas, le simple select ... ne justfie effectivement pas son emploi mais je suppose que ton besoin en SQL dynamque concerne l'étape suivante :
Intégrer la liste de colonnes obtenue dans le SQL de l'étape suivante.
Au passage, je préfère
and column_name != 'ETATOBJET'
au
and column_name <> 'ETATOBJET'
Bonne journée