Overblog
Editer l'article Suivre ce blog Administration + Créer mon blog
23 novembre 2008 7 23 /11 /novembre /2008 19:10

Bonsoir,


Encore une petite nouveauté ORACLE 11. Avec sa nouvelle version, Oracle a introduit la notion de colonne virtuelle. Un mot savant pour présenter ce qui n'est ni plus ni moins qu'un champs calculé.

D'ailleurs, ceux qui ont eu l'occasion de travailler avec SQL SERVER doivent se dire "Et bien il était temps", car cette fonctionnalité existe au moins depuis SQL SERVER 2000 (j'ai un doute sur SQL7).

Juste pour la forme un petit exemple tout simple. Une table de facture avec un montant HT, le taux de TVA, et partir de la on va pouvoir avoir la TVA et TTC. Et cela bien sur sans passer par un trigger ou un calcul avant insertion



CREATE TABLE Facture

(

NumeroFacture NUMBER,

MontantHT FLOAT,

TVA FLOAT,

MontantTVA AS (MontantHT*TVA/100),

MontantTTC AS (MontantHT+(MontantHT*TVA/100))

);




Remarque 1: Il n'est pas nécessaire d'indiquer un type pour les colonnes virtuelles.


Remarque 2: Il n'est pas possible de créer une colonne virtuelle contenant elle même dans son expression une colonne virtuelle.


Remarque 3: Il est tout a fait possible d'indexer ce type de colonne, et d'utiliser ce type de colonne comme clé de partition.


LAO.


Partager cet article
Repost0

commentaires

S
C'est puissant comme fonctionnalité
Répondre
L
<br /> <br /> "Puissant" , je ne sais pas , mais en tout cas ca peut être relativement pratique.<br /> <br /> LAO.<br /> <br /> <br /> <br />
F
Et bien, il était temps !!<br /> :)<br /> <br /> C'est toujours plus facile à déclarer qu'un trigger.
Répondre