Linux Oracle8

Linux Oracle8なるものにちょっと触れてみました。



1.インストール編

(1)商用UNIXサーバへのインストールと違ってUNIXカーネルの設定変更等の負担も少なくLinux Oracle8のインストールは結構楽なようです。
Character SetはJA16SJISを選択し、National Character SetはJA16SJISFIXEDを指定してみました。

(2)下の画面はインスートル途中のものです。



2.日本語データの利用

Linux上でSQL*Plusを直接使ったり、SolarisからLinuxにtelnetで入ってSQL*Plusを使って日本語データを表示させる場合には以下のように環境変数を指定します。
export NLS_LANG=Japanese_Japan.JA16EUC

またMacOSからLinuxにtelnetで入ってSQL*Plusを使って日本語データを表示させる場合には以下のように環境変数を指定します。
export NLS_LANG=Japanese_Japan.JA16SJIS

このあたりは環境依存が強いので実際にはご自分の環境に合わせて環境変数をセットすることになります。


3.JDBCの利用

Linux Oracle8付属のJDBCドライバを使ってJavaアプレットでOracle8をアクセスしてみました。

(1)Notes からのアクセス例




(2)MacOSからのアクセス例





4.その他

(1)WindowsNTにPerl for WindowsとOracle Objects for OLE(OO4O)を組み込んでLinux Oracle8をアクセスしてみました。

Perlのサンプルソース(WebOO4O.pl)は以下の通りです。

use Win32::OLE;
print "Content-type: text/html\n\n";
print <<END;
<HTML>
<HEAD><TITLE>CGI of OO4O for O4L</TITLE></HEAD>
<BODY>
<TABLE BORDER=1>
END

$SQL = "select * from dept";
$OraSession = new Win32::OLE 'OracleInProcServer.XOraSession' or die "Failed!!\n";
$OraDatabase = $OraSession->OpenDatabase("LNXORA", "scott/tiger", 0);
$OraDynaset = $OraDatabase->CreateDynaset($SQL,0);
print "<TR>\n";
for ($i = 0; $i <= $OraDynaset->Fields->Count -1; $i++) {
     print "<TD><B>";
     $wk=$OraDynaset->Fields($i)->Name;
     print "$wk";
     print "</B></TD>\n";
}
print "</TR>\n";
while (!$OraDynaset->EOF()) {
     print "<TR>\n";
     for ($i = 0; $i <= $OraDynaset->Fields->Count -1; $i++) {
     print "<TD>";
     $wk=$OraDynaset->Fields($i)->Value;
     print "$wk";
     print "</TD>\n";
     }
     print "</TR>\n";
     $OraDynaset->MoveNext();
}

print <<END;
</TABLE>
</BODY>
</HTML>
END
exit;
 

下の画面は上記の実行結果です。