В чем разница между «AS» и «IS» в хранимой процедуре Oracle?
Я вижу, что процедуры Oracle иногда пишутся 9X_keyword с ключевым словом "AS", а иногда с ключевым 9X_stored-procedures словом "IS".
CREATE OR REPLACE Procedure TESTUSER.KILLINSTANCE (INSTANCEID integer) **AS** ...
против
CREATE OR REPLACE Procedure TESTUSER.KILLINSTANCE (INSTANCEID integer) **IS** ...
Есть ли между ними разница?
Изменить: По-видимому, между ними нет функциональной разницы, но некоторые люди следуют соглашению использовать «AS», когда SP является частью пакета, и «IS», когда это не так. Или наоборот. Мех.
- Разве второй не всегда просто указывает на другую процедуру ...
Ответ #1
Ответ на вопрос: В чем разница между «AS» и «IS» в хранимой процедуре Oracle?
Никаких других. Они являются синонимами, чтобы 9X_stored-procedure сделать ваш код более читабельным:
ФУНКЦИЯ 9X_stored-procedure f ЕСТЬ ...
СОЗДАТЬ ПРОСМОТР v КАК ВЫБРАТЬ 9X_stored-procedures ...
Ответ #2
Ответ на вопрос: В чем разница между «AS» и «IS» в хранимой процедуре Oracle?
Одно небольшое отличие ...
Это синонимы пакетов 9X_sproc и процедур, но не курсоров:
Это работает 9X_stored-procedure ...
cursor test_cursor is select * from emp;
... но это не так:
cursor test_cursor as select * from emp;
- Ответ Дилипа Кришнаму ...
Ответ #3
Ответ на вопрос: В чем разница между «AS» и «IS» в хранимой процедуре Oracle?
«IS» и «AS» действуют как синонимы при создании 9X_oracle процедур и пакетов, но не для курсора, таблицы 9X_oracle или представления.
Ответ #4
Ответ на вопрос: В чем разница между «AS» и «IS» в хранимой процедуре Oracle?
Вот еще одно отличие (во всяком случае, в 9X_stored-procedures 10 г)
Учитывая свободный тип объекта:
CREATE TYPE someRecordType AS OBJECT ( SomeCol VARCHAR2(12 BYTE) );
Вы можете 9X_keywords создать тип loose
Table этого типа объекта с 9X_stored-procedures помощью AS
или IS
CREATE OR REPLACE TYPE someTableType IS {or AS} TABLE OF someRecordType;
Однако, если вы создаете тот 9X_stored-procedures же тип таблицы в пакете, вы должны использовать 9X_stored-procedure IS
:
CREATE OR REPLACE PACKAGE SomePackage IS TYPE packageTableType IS TABLE OF someRecordType; END SomePackage;
Использование AS
в пакете приводит к следующей 9X_sproc ошибке:
Ошибка (2,30): PLS-00103: обнаружен 9X_sproc символ "ТАБЛИЦА" при ожидании одного из 9X_keyword следующих событий: непрозрачный объект
Ответ #5
Ответ на вопрос: В чем разница между «AS» и «IS» в хранимой процедуре Oracle?
Согласно TutorialsPoint
Ключевое слово AS используется 9X_oracle вместо ключевого слова IS для создания автономная 9X_sproc процедура.
и учитывая предыдущие ответы,
Думаю
AS
9X_oracle для отдельных (вне любого блока, подпрограммы, пакета) сущностей
и
IS
9X_stored-procedure предназначен для встроенных (внутри блока, подпрограммы 9X_keywords или пакета) объектов.
.
Ответ #6
Ответ на вопрос: В чем разница между «AS» и «IS» в хранимой процедуре Oracle?
Ключевое слово AS используется вместо ключевого 9X_oracle слова IS для создания автономной функции.
[Автономная сохраненная функция 9X_stored-procedure - это функция (подпрограмма, возвращающая одно значение), которая хранится в базе 9X_keyword данных. Примечание. Автономная сохраненная 9X_stored-procedures функция, которую вы создаете с помощью оператора 9X_keywords CREATE FUNCTION, отличается от функции, которую вы 9X_oracle объявляете и определяете в блоке или пакете 9X_keyword PL / SQL. ]
Для получения дополнительных 9X_keyword сведений read this ...
-
1
-
16
-
20
-
6
-
4
-
23
-
11
-
17
-
6
-
5
-
13
-
10
-
1
-
6
-
10
-
11
-
7
-
7
-
6
-
16
-
8
-
8
-
8
-
19
-
6
-
5
-
6
-
11
-
6
-
4
-
10
-
8
-
3
-
7
-
20
-
7
-
4
-
6
-
3
-
5
-
4
-
13
-
4
-
6
-
9
-
2
-
5
-
5
-
10
-
7