Kan vi bruge DDL-sætning i procedure i Oracle?
Kan vi bruge DDL-sætning i procedure i Oracle?

Video: Kan vi bruge DDL-sætning i procedure i Oracle?

Video: Kan vi bruge DDL-sætning i procedure i Oracle?
Video: DDL : CREAT, DROP | SQL Commands 2024, November
Anonim

DDL erklæringer er ikke tilladt ind Procedurer ( PLSQL BLOK) PL/SQL objekter er prækompileret. På den anden side, DDL (Data Definition Sprog) udsagn som CREATE, DROP, ALTER kommandoer og DCL (Data Control Language) udsagn gerne GRANT, REVOKE kan ændre afhængighederne under afviklingen af programmet.

Kan vi desuden bruge DDL-sætninger i lagret procedure?

Du kan bruge kun DDL KOMMENTAR udsagn i en gemt procedure . Du kan ikke angive DML COMMENT udsagn , som er begrænset til indlejret SQL applikationer for at hente kommentarer til databaseobjekter, kolonner i en tabel og parametre. Alle varianter af CREATE TABLE udmelding er gyldige.

Efterfølgende er spørgsmålet, kan vi bruge DML-erklæringen i proceduren? Du kan indtast SQL-datamanipulationssprog direkte ( DML ) udsagn inde i PL/SQL-blokke, og du kan bruge procedurer , leveret af Oracle, til at udføre data definition language (DDL) udsagn.

Bare så, kan vi bruge DDL-sætning i funktion i Oracle?

Ingen DDL tilladt: A fungere kaldet inde fra en SQL udmelding er begrænset imod DDL fordi DDL udsteder en implicit forpligtelse. Du kan ikke udstede nogen DDL erklæringer inde fra en PL/SQL funktion . Begrænsninger mod begrænsninger: Det kan du ikke brug -en fungere i check-begrænsningen for en oprettelsestabel DDL erklæring.

Hvordan kører jeg et DDL-script i Oracle?

  1. Trin 1: Forbered din DDL på forhånd.
  2. Trin 2: Kør din DDL gennem PL/SQL-program ved hjælp af Execute Immediate.
  3. For det første: Indsæt altid din SQL-sætning i et par enkelte anførselstegn.
  4. For det andet: Tag dig af semikolon.

Anbefalede: