Какая польза от функции sqlcxt () pro c? - PullRequest
1 голос
/ 22 февраля 2011

Я очень плохо знаком с технологией, и у меня нет практического опыта в разработке программ. При отладке программы я столкнулся с вызовом функции

sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);

Я искал в Google справку по функции sqlcxt (), но я не нашел никаких ресурсов. В некоторых блогах упоминаются проблемы, возникшие во время предварительной компиляции программы, но они бесполезны.

1 Ответ

5 голосов
/ 15 ноября 2011

sqlcxt () является недокументированной функцией.

Когда вы пишете Pro * C, а затем запускаете его через прекомпилятор, прекомпилятор берет ваш исходный файл '.pc' и выдает '.c 'файл, подходящий для компиляции системного C-компилятора.Но некоторые вещи, которые преобразуются из кода прекомпилятора (например, директивы «EXEC SQL ....» и т. Д.) В код C, ссылаются на недокументированные функции.

Идея состоит в том, что вы можете просто встраивать SQLвыражений в ваш C-код, и прекомпилятор Oracle позаботится о переводе этих разделов кода в C. Обнаруженная вами функция sqlcxt () - одна из тех недокументированных.

Если вы заинтересованы в написании чистого текстаC кодом и взаимодействуя с Oracle, вы должны исследовать библиотеку OCI.Если вы намереваетесь написать Pro * C, то вас должен интересовать только исходный файл '.pc', а содержимое файла '.c' действительно не должно вас волновать.

Надеюсь, это поможет.

...