PL/SQL acceptable identifikatorer, variable og navngivningskonventioner

⚡ Smart opsummering

PL/SQL-identifikatorer er navnene på PL/SQL-objekter såsom variabler, konstanter, cursorer og procedurer. De skal starte med et bogstav, holde sig inden for 30 tegn, være ufølsomme over for store og små bogstaver og følge navngivningskonventioner, der signalerer en variabels niveau og type.

  • 🏷️ Definition: En identifikator navngiver ethvert PL/SQL-objekt, fra en variabel til en pakke eller etiket.
  • 📏 Regler: Skal begynde med et bogstav, være højst 30 tegn lang og må ikke indeholde mellemrum.
  • 🔠 Tilladte skilte: Dollartegn, understregning og hash er tilladt i en identifikator.
  • 🧭 Navngivningskonvention: Det første bogstav angiver niveauet (P, L, G), og det andet angiver typen (C, V, N, R, T).
  • 📦 Variabler: En variabel er en identifikator, der er bundet til et lagerområde og deklareret med en gyldig datatype.
  • 📝 Erklæring: Variabler deklareres i den deklarative sektion før brug.
  • ➡️ Opgave: En værdi kan indstilles ved deklaration eller senere ved hjælp af := operatoren.

Navngivningskonventioner for PL/SQL-identifikatorer

Hvad er PL/SQL-identifikatorer?

Identifikatorer I PL/SQL er navnene givet til et PL/SQL-objekt. Objektet kan være en konstant, variabel, undtagelse, markør, procedure, funktion, pakke, trigger, objekttype, reserveret ord eller etiket. Identifikatorer indeholder bogstaver, tal, tegn, understregninger osv. De skelner ikke mellem store og små bogstaver og er begrænset til 30 tegn i størrelse.

Egenskaber for PL/SQL-identifikatorer

Her er de vigtigste egenskaber for PL/SQL-id'er:

  • Skal starte med et bogstav.
  • Den maksimale størrelse er begrænset til 30 tegn.
  • Må ikke indeholde mellemrumstegn.
  • Kan indeholde et dollartegn ('$'), et understregningstegn ('_') og et firkanttegn ('#').
  • Er ikke følsom over for store og små bogstaver.

Navnekonventioner i PL/SQL

I et komplekst program kan det være nødvendigt at inkludere mange identifikatorer, såsom variabler og cursorer. For at undgå forvirring og øge læsbarheden er vi nødt til at følge visse navngivningskonventioner.

De almindeligt anvendte navngivningskonventioner i PL/SQL er som følger.

Det første bogstav angiver det deklarerede niveau for variablen:

  • 'P' – variabel deklareret på parameterniveau.
  • 'L' – variabel deklareret i den lokale blok.
  • 'G' – variabel deklareret på globalt niveau.

Det andet bogstav angiver typen af ​​identifikator:

  • 'C' – markøridentifikator.
  • 'V' – VARCHAR- og CHAR-datatypen.
  • 'N' – datatypen NUMBER.
  • 'R' - posttype.
  • 'T' – bordtype.

Nedenfor er nogle eksempler på korrekte navngivningskonventioner i PL/SQL:

  • Lv_name – lokal niveauvariabel af VARCHAR/CHAR-datatypen.
  • Pc_num – parameterniveau-markør-id.
  • Gn_user_id – global niveauvariabel for numerisk datatype.

PL/SQL-variabler

Variabler I PL/SQL er der grundlæggende identifikatorer, der er tildelt et lagerområde, som et program kan manipulere. Variabler er pladsholdere, hvor brugeren kan gemme værdier. Disse variabler skal knyttes til en gyldig PL/SQL-datatype før brug. Datatyper definerer lagrings- og behandlingsmetoderne for disse variabler.

PL/SQL variabel erklæring

Variabler bruges primært til at gemme data under datamanipulation eller -behandling. De skal deklareres før brug i den deklarative del af PL/SQL blokke.

Deklarering af en variabel er processen med at tildele et navn til pladsholderen og knytte den til en gyldig datatype.

Syntaks

<variable_name> <datatype>;

Syntaksen ovenfor viser, hvordan man deklarerer en variabel i den deklarative sektion.

Datalagring i PL/SQL-variabler

Når en variabel er deklareret, er den klar til at indeholde data af den definerede type. Værdierne kan tildeles enten i udførelsessektionen eller på deklarationstidspunktet. Værdien kan være en literal eller en anden variabels værdi. Når den er tildelt, gemmes den i den hukommelsesplads, der er allokeret til den pågældende variabel.

Syntaks

<variable_name> <datatype> := <default_value>;

Syntaksen ovenfor viser, hvordan man deklarerer en variabel og tildeler en værdi i den deklarative sektion.

<variable_name> <datatype>;
<variable_name> := <value>;

Syntaksen ovenfor viser, hvordan man tildeler en værdi til en allerede deklareret variabel.

Eksempel 1: I dette eksempel lærer vi, hvordan man deklarerer en variabel og tildeler den en værdi. Vi udskriver 'GURU99' i følgende program ved hjælp af variabler.

Eksempel på PL/SQL-variabeldeklaration og -tildeling

DECLARE
lv_name VARCHAR2(50);
lv_name_2 VARCHAR2(50) := 'GURU99';
BEGIN
lv_name := lv_name_2;
dbms_output.put_line(lv_name);
END;
/

Code Forklaring

  • Code linje 2: Deklarering af variablen 'lv_name' for VARCHAR2 med størrelse 50.
  • Code linje 3: Deklarering af variablen 'lv_name_2' for VARCHAR2 med størrelse 50 og tildeling af standardværdien ved hjælp af literalen 'GURU99'.
  • Code linje 5: Værdien for variablen 'lv_name' tildeles fra variablen 'lv_name_2'.
  • Code linje 6: Udskriver den gemte værdi af variablen 'lv_name'.

Når ovenstående kode udføres, får du følgende output.

Produktion

GURU99

Ofte Stillede Spørgsmål

Den skal starte med et bogstav, være højst 30 tegn lang, ikke indeholde mellemrum og kun bruge bogstaver, cifre og tegnene dollar, understregning og hash. Identifikatorer skelner ikke mellem store og små bogstaver.

Præfikset koder omfanget og typen med et hurtigt blik, så Lv_name læses som en lokal varchar-variabel. I en stor blok reducerer dette forvirring og gør koden nemmere at vedligeholde.

Operatoren := tildeler en værdi til en variabel. En enkelt = bruges til sammenligning inden for betingelser. At blande dem er en almindelig begynderfejl, der forårsager en kompileringsfejl.

Ja. AI kan scanne en pakke, markere identifikatorer, der overtræder de aftalte præfikser, og foreslå omdøbninger. Den kan også generere ensartede navne til nye variabler baseret på deres omfang og type.

Nej. lv_name og LV_NAME refererer til den samme identifikator. Kun strengliteraler i enkelte anførselstegn skelner mellem store og små bogstaver, så der findes en konvention for læsbarhed, ikke fordi compileren kræver det.

Opsummer dette indlæg med: