Pro*C Priklad na vlozeni dat a zobrazeni tabulky: Zdrojak Pro spravnou funkci musi existovat tabulka "TEST": SQL> create table test (a integer, b varchar2(20), c number); Pro bezchybne pouziti je potreba prekladat na stroji stejne architektury jako jsou nainstalovane knihovny Oracle pro jazyk C. Pro*C a prislusne knihovny jsou vyuzivany ze stroje db.fi.muni.cz, coz je architektura i386. 64bit verze nainstalovany nejsou. Pouzijeme pocitac aisa -- kontrola spravneho procesoru (musi byt i383, i686 nebo x86_64): aisa$ uname -a Preklad z Pro*C do C: aisa$ proc priklad.pc Program proc vygeneruje dva soubory: priklad.c (vysledny zdrojovy kod v C, ktery prelozil EXEC SQL definice) a priklad.lis (obsahuje pripadna chybova hlaseni prekladace Pro*C). Preklad z C do binarni (spustitelne podoby): aisa$ gcc -m32 -o priklad priklad.c -L$ORACLE_HOME/lib -I$ORACLE_HOME/precomp/public -lclntsh Pro uspesne slinkovani je nutne pridat knihovnu libclntsh.a (viz -lclntsh). Pocitac aisa je x86_64 architektura, proto je nutne pridat prepinac -m32 (kompilace do 32bitoveho kodu, ve kterem jsou ostatni Oracle knihovny). Z tohoto duvodu je potreba mit nainstalovany balicek pro kompilaci 32bitovych programu, zejmena glibc.i686. Spusteni: aisa$ ./priklad Connected to ORACLE A B C ----------- ----------------- ---------- 00000000003 test 2.500000 00000000004 test 2.500000
Perl: Perl ma k dispozici univerzalni rozhrani pro praci s databazemi: DBI Zdrojak Spusteni: aisa$ ./priklad.perl Data: a: 3, b: test, c: 2,5 a: 4, b: test, c: 2,5 a: 5, b: ahoj, c: 1,5 a: 6, b: perl, c: 4,2 Pouziva se DBD::Oracle, pokud ho v systemu nemate, lze jej nainstalovat primo z CPANu pomoci (musite mit nastavenou a vyexportovanou promennou ORACLE_HOME): Napr: $ export ORACLE_HOME=/packages/run/oracle-10/OraHome_1 Instalace balicku: $ perl -MCPAN -e 'install DBI' $ perl -MCPAN -e 'install DBD::Oracle'
PHP: PHP nabizi modul pro Oracle, ktery poskytuje funkce oci_* (drive ora_*). Dokumentaci lze nalezt zde. Zdrojak Vhodnejsi je pouzit knihovnu MDB2 z frameworku PEAR. Tato knihovna poskytuje abstraktni rozhrani k databazim.