Welche Bedeutung hat # in SQL?

8

Ich habe den folgenden Code, um einen Objekttyp in Oracle (PL ??)

zu erstellen %Vor%

Ich würde gerne wissen, was die Bedeutung von # an die Variable Staff_ID in der Deklaration angehängt ist?

    
Dark Star1 05.05.2011, 18:35
quelle

3 Antworten

2

Wer den Code geschrieben hat, hat mit # wahrscheinlich nichts besonderes gemeint.

Aber # bedeutet anscheinend etwas für Oracle, obwohl ich nicht weiß was. Aus der SQL-Sprachreferenz :

  

Oracle rät dringend davon ab   Verwenden von $ und # in nicht angegeben   Identifikatoren.

Hier sind einige Vermutungen über die Warnung:

  • es bezieht sich auf einen wirklich alten Fehler (der Warnung geht zumindest auf Oracle zurück 7)
  • Oracle plant, etwas damit zu tun es in einer zukünftigen Version
  • dieses Zeichen ist nicht für alle Tastaturen, Zeichensätze oder Plattformen verfügbar, die von Oracle unterstützt werden

Das Data Dictionary verwendet das Nummernzeichen sehr, und soweit ich das beurteilen kann, funktioniert es gut für Benutzerobjekte. Aber nur um sicher zu sein, möchten Sie vielleicht entfernen.

    
Jon Heller 06.05.2011, 05:29
quelle
10

Keine besondere Bedeutung.

Oracle erlaubt die Verwendung von $ , _ und # in Bezeichnern, genau wie alle anderen alphanumerischen Zeichen, aber der Bezeichner sollte mit einem Buchstaben beginnen.

    
Quassnoi 05.05.2011 18:40
quelle
3

Das ist Teil des Spaltennamens Staff_ID# . Das Nummernzeichen ist ein zulässiger Teil eines Bezeichners (Tabellen- / Spaltenname) in PL / SQL. Siehe hier

    
Ken White 05.05.2011 18:41
quelle

Tags und Links