1
Я практикую с программой Pro*C
и SQL
и у меня есть следующая простая программа:Ошибка при попытке компиляции Pro программ * C в Linux
#include <stdio.h>
#include <sqlca.h>
char user_id[20]="test/test"
char emp_name[20];
main()
{
EXEC SQL CONNECT :userid;
printf("Connected\n");
EXEC SQL DECLARE emp_cursor CURSOR FOR
SELECT name
FROM badge;
EXEC SQL OPEN emp_cursor;
printf("Employees---------------");
EXEC SQL WHENEVER NOT FOUND DO break;while (1)
{
EXEC SQL FETCH emp_cursor INTO :emp_name;
printf("%s\n", emp_name);
}
EXEC SQL CLOSE emp_cursor;
EXEC SQL COMMIT WORK RELEASE;
exit(0);
}
Он просто извлекает все имена из таблицы под названием BADGE
:
CREATE TABLE BADGE
(
badge_id NUMBER PRIMARY KEY,
name VARCHAR(20),
surname VARCHAR(20) NOT NULL,
birthday DATE
);
Однако, когда я пытаюсь скомпилировать источник у меня есть следующая ошибка:
proc test.pc proc: symbol lookup error: proc: undefined symbol: kgsuglo_
Может ли кто-нибудь помочь мне с ошибкой?
Какая версия Oracle/Pro * C? Мгновенный клиент или полная установка? Правильно ли настроена ваша среда - PATH и LD_LIBRARY_PATH установлены и экспортированы? –
PATH и LD_LIBRARY_PATH правильно экспортированы. Есть ли способ, который я могу использовать для проверки версии Oracle/Pro * C и типа установки? Я использую уже существующую тестовую среду. – user3610096
Отображает ли 'proc' баннер, который включает в себя версию и системный путь по умолчанию - или он не работает до того, как он дойдет до этого? Если нет, то что будет показывать баннер '' llplus''? В противном случае ваш ORACLE_HOME может рассказать вам, а также запись для этого в вашем PATH (есть ли ORACLE_HOME/bin). –