J'ai le code suivant pour créer un type d'objet dans Oracle (PL ??)
CREATE OR REPLACE TYPE STAFF_T as OBJECT(Staff_ID# NUMBER, Person PERSON_T); \
3 Réponses :
Pas de signification particulière. P>
oracle permet d'utiliser $ code>,
_ code> et
# code> dans des identificateurs, tout comme tous les autres caractères alphanumériques, mais l'identifiant doit commencer par un alpha caractère (une lettre). p>
Cela fait partie du nom de la colonne staff_id # code>. Le panneau de livre est une partie admissible d'un identifiant (nom de table / colonne) dans PL / SQL. Voir ici p>
Quiconque a écrit le code ne voulait probablement rien dire spécial par #. p>
mais # signifie apparemment quelque chose à Oracle, bien que je ne sache pas quoi. À partir du Référence de langue SQL : P >
Oracle vous décourage fortement de en utilisant $ et # in non notifié identifiants. p> blockQuote>
Voici quelques suppositions pour ce que l'avertissement est à propos de: p>
- c'est lié à un très vieux bug (le AVERTISSEMENT remonte au moins oracle 7) li>
- Oracle prévoit faire quelque chose avec dans une future véronon li>
- ce personnage n'est pas disponible sur tous les claviers, les jeux de caractères ou les plates-formes que Oracle prend en charge LI> ul>
Le dictionnaire de données utilise beaucoup le signe du numéro, et autant que je puisse le dire, cela fonctionne parfaitement pour les objets utilisateur. Mais juste pour être en sécurité, vous voudrez peut-être le supprimer. P>
Je doute que c'est un bogue ancien, car beaucoup de dictionnaire de données d'Oracle les utilise. Par exemple, la colonne Serial # en V $ Session.
Je crois que c'est pour des raisons de compatibilité. # code>, par exemple, est un commentaire dans
mysql code>.
Certaines personnes utilisent # comme une abréviation pour "nombre". Par exemple.
Politique # Code> serait prononcé "numéro de politique". Dans votre cas, ce serait "numéro d'identification du personnel", je suppose.