У меня есть таблица, которая имеет два столбца, которые имеют значение по умолчанию varchar. Также у меня есть хранимая процедура, которая принимает 4 значения, два значения varchar и две даты. Я хотел бы сравнить два значения входного varchar со значениями по умолчанию для двух столбцов в таблице, даже если в таблицу не были вставлены строки. Есть ли способ сделать это?Сравнение переменной с значением по умолчанию столбца в процедуре Oracle
Это не работает, но что-то в этом роде.
create or replace
PROCEDURE TEST_PROC
(
TEST_NAME IN VARCHAR2
, TEST_VERSION IN VARCHAR2
, TEST_START IN DATE
, TEST_END IN DATE
) AS
BEGIN
if TEST_NAME = TABLE.COL_1.DEFAULT_VALUE
AND TEST_VERSION = TABLE.COL_2.DEFAULT_VALUE ...
Я не могу заставить это работать, когда я помещаю COL_1 вместо COLUMN_NAME, поскольку у вас есть это сообщение, что это недопустимый идентификатор. Есть идеи? – javakid1993
COLUMN_NAME - это столбец в DICTIONARY VIEW. Сравните его с столбцом в таблице. Вот почему я использовал переменные связывания. Например, если таблица, которую вы хотите сравнить, - TABLE_1, а ваш столбец COL_1, это должно быть: WHERE TABLE_NAME = 'TABLE_1' и COLUMN_NAME = 'COL_1' – tilley31