[PHP-users 28343] ODBCでDB2にアクセス

柴田 健郎 takeofuture @ hotmail.com
2006年 2月 7日 (火) 11:52:02 JST


上鍵さん
立見さん
冨士さん

いろいろ情報ありがとうございます
いろいろ試行錯誤して失敗した上で

冨士さんの
http://www-03.ibm.com/servers/eserver/iseries/access/
およびそのマニュアル
http://www-03.ibm.com/servers/eserver/iseries/access/linux/guide/

を参考にすすめています

すこしづつですが前進しているみたいです。
まずインストールしたら
/etc/odbcinst.iniに

[iSeries Access ODBC Driver]
Description             = iSeries Access for Linux ODBC Driver
Driver          = /opt/ibm/iSeriesAccess/lib/libcwbodbc.so
Setup           = /opt/ibm/iSeriesAccess/lib/libcwbodbcs.so
Threading               = 2
DontDLClose             = 1
UsageCount              = 1

というエントリーが追加されました

PHP(Version5)で

$conn_string = 
	"DRIVER={iSeries Access ODBC Driver};DATABASE=$database;" .
  	"HOSTNAME=$hostname;PORT=$port;PROTOCOL=TCPIP;UID=$user;PWD=$password;";
$conn = odbc_connect($conn_string, '', '');

if ($conn) {
   echo "Connection succeeded.";
   odbc_close($conn);
}
else {
   echo "Connection failed.";
}

でやっってますが・・・
エラーで

Warning: odbc_connect() 
[function.odbc-connect]: 
SQL error: 
[unixODBC][IBM][iSeries Access ODBC Driver]
Missing system name needed for connection., 
SQL state S1000 in SQLConnect 
in /var/www/html/ibm.php on line 10
Connection failed. 

となります

〔以前はDEFAULT DRIVER not found とあり、ドライバー事態がNG

だったみたなので)

odbcinst -j
だと
unixODBC 2.2.11
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
USER DATA SOURCES..: /root/.odbc.ini

ですが
/etc/odbc.ini
はなにもはいってません。

そこで
odbc.iniを
[AS400Master]
Description = AS400 Master File
Driver = iSeries Access ODBC Driver
Database = TEST
Server = 192.168.1.20
Port = 449

として
$conn = odbc_connect("AS400Master","USER","PASSWD");
としても同じエラーがでています
見る限りドライバーは認識しているようなのですが・・・
なぜかデータソースがみえんといっているようです

なにか試すことがありましたらどうかご教授ください

_________________________________________________________________
MSNショッピングでXbox360を早速チェック! 
http://shopping.msn.co.jp/softcontent/softcontent.aspx?scmId=593 



PHP-users メーリングリストの案内