Saya melihat prosedur Oracle terkadang ditulis dengan "AS", dan terkadang dengan kata kunci "IS".
CREATE OR REPLACE Procedure TESTUSER.KILLINSTANCE (INSTANCEID integer) **AS**
...
vs.
CREATE OR REPLACE Procedure TESTUSER.KILLINSTANCE (INSTANCEID integer) **IS**
...
Apakah ada perbedaan diantara keduanya?
Sunting: Rupanya, tidak ada perbedaan fungsional antara keduanya, tetapi beberapa orang mengikuti konvensi untuk menggunakan "AS" saat SP adalah bagian dari paket dan "IS" jika bukan. Atau sebaliknya. Meh.
oracle
stored-procedures
keyword
Ishmaeel
sumber
sumber
Jawaban:
Tidak ada apapun. Mereka adalah sinonim yang diberikan agar kode Anda lebih mudah dibaca:
FUNGSI f IS ...
BUAT TAMPILAN v SEBAGAI PILIH ...
sumber
Satu perbedaan kecil ...
Mereka adalah sinonim untuk paket dan prosedur, tetapi tidak untuk kursor:
Ini bekerja...
... tapi ini tidak:
sumber
"IS" dan "AS" bertindak sebagai sinonim saat membuat prosedur dan paket, tetapi tidak untuk kursor, tabel, atau tampilan.
sumber
Inilah perbedaan lainnya (dalam 10g, bagaimanapun juga)
Diberikan tipe objek longgar:
Anda dapat membuat
loose
tipe Tabel dari tipe objek ini denganAS
atauIS
Namun, jika Anda membuat tipe tabel yang sama dalam sebuah paket, Anda harus menggunakan
IS
:Penggunaan
AS
dalam paket menghasilkan kesalahan berikut:sumber
Menurut TutorialsPoint
dan mempertimbangkan jawaban sebelumnya,
saya kira
AS
adalah untuk entitas yang berdiri sendiri (di luar blok, subprogram, paket) entitas apa pundan
IS
adalah untuk entitas tertanam (dalam blok, subprogram atau paket)..
sumber
Kata kunci AS digunakan sebagai pengganti kata kunci IS untuk membuat fungsi mandiri .
[ Fungsi tersimpan mandiri adalah fungsi ( subprogram yang mengembalikan nilai tunggal ) yang disimpan dalam database. Catatan: Fungsi tersimpan mandiri yang Anda buat dengan pernyataan CREATE FUNCTION berbeda dari fungsi yang Anda deklarasikan dan tentukan dalam blok atau paket PL / SQL. ]
Untuk penjelasan lebih lanjut, baca ini ...
sumber