Как я могу создать программу COBOL со встроенным SQL, которая принимает вход пользователя и использует SQL для INSERT в таблицу. Я знаю, как вставить с помощью SQL, но я не знаю, как передать вход COBOL ACCEPT в таблицу SQL
EXEC SQL DECLARE A05544 TABLE
( CUST_ID CHAR(6) NOT NULL,
PROD CHAR(6) NOT NULL,
PRIC CHAR(6) NOT NULL
) END-EXEC.
01 DCLA05544.
10 CUST_ID PIC X(6).
10 PROD PIC X(6).
10 PRIC PIC X(6).
Выше приведено объявление встроенной таблицы SQL для таблицы, которую я хочу вставить в
WELCOME.
DISPLAY 'INPUT CUSTOMER ID'
Так начинается программа
Ive попытался вставить этот путь
EXEC SQL
INSERT INTO A05544
(CUST_ID)
VALUES(CID_ADD)
END-EXEC
но я получаю ошибку DSNHANAL LINE 225 COL 14 ЗАЯВЛЕНИЕ ССЫЛКИ COLUMN 'A05544''CID_ADD', КОТОРЫЙ НЕ ОБНАРУЖЕН В УКАЗАННОЙ ТАБЛИЦЕ (S)
Нет ссылки на CID_ADD в любой части COBOL, не так ли? Похоже, что это переменная, которую вы ACCEPT
заранее, в этом случае используйте :
чтобы сообщить прекомпилеру о ваших намерениях:
EXEC SQL
INSERT INTO A05544
(CUST_ID)
VALUES(:CID_ADD)
END-EXEC
EXEC SQL
добавьте к двоеточию: