[s2container-php5:150] Re: S2DaoPHP5からmssqlで接続が出来ません。

klove [E-MAIL ADDRESS DELETED]
2009年 11月 3日 (火) 21:24:55 JST


kloveです。
こんにちは。

実際に試してはおりませんが、s2daoはpdoでDBにアクセスしているので、
dsn設定をdblibやodbcにすることになるのかと思います。
  http://www.php.net/manual/ja/ref.pdo-dblib.php

または、次のプロパティファイルにmssql項目を追加すると動作するかもしれません。
  https://www.seasar.org/svn/s2dao.php5/tags/S2Dao.PHP5-1.1.2/src/s2dao.php5/dbms.properties

不確かな情報ですみませんが、よろしくお願い致します。


北村 正和 さんは書きました:
> 初めまして、kitamura-mと申します。
> 
> 表題の件について皆様にご助力願いたいと思います。
> 
> 現在、S2Dao-1.1.2とS2Container-1.2.0でXAMPP 1.6.3aからSQLServerへ
> exampleを使った接続を試みていますが、エラーが発生してうまく接続できません。
> 
> ○エラーメッセージ
> C:\eclipse3.4.2\workspace\sample2\s2dao.php5\examples\s2dao>php
> cd_select1.php
> 
> Catchable fatal error: Argument 3 passed to
> S2Dao_BeanMetaDataImpl::__construct() must implement interface S2Dao_Dbms,
> null given, call
> ed in
> C:\eclipse3.4.2\workspace\sample2\s2dao.php5\build\s2dao.php5\S2Dao\S2Dao_Da
> oMetaDataImpl.class.php on line 536 and defined in C:
> \eclipse3.4.2\workspace\sample2\s2dao.php5\build\s2dao.php5\S2Dao\S2Dao_Bean
> MetaDataImpl.class.php on line 45
> 
> 
> MySQLで接続することは出来ているのですが、何故SQLServerには接続
> 出来ないのか、原因を特定できません。
> 
> PDO.diconの接続は下記の通りです。
> ○MySQL
>     <component name="dataSource" class="S2Container_PDODataSource">
>         <property name="dsn">"mysql:host=localhost;
> dbname=sample"</property>
>         <property name="user">"root"</property>
>         <property name="password">"admin"</property>
>         <property name="option">
>             array(PDO::ATTR_ORACLE_NULLS => PDO::NULL_EMPTY_STRING);
>         </property>
>     </component>
> 
> ○SQLServer
>     <component name="dataSource" class="S2Container_PDODataSource">
>         <property name="dsn">"mssql:host=<サーバのアドレス名>; dbname=<サー
> バーのデータベース名>"</property>
>         <property name="user">"<ユーザー名>"</property>
>         <property name="password">"<パスワード>"</property>
>         <property name="option">
>             array(PDO::ATTR_ORACLE_NULLS => PDO::NULL_EMPTY_STRING);
>         </property>
>     </component>
> 
> php_mssql.dllのバージョンは5.2.3.3です。5.2.9.9に変更したり、ntwdblib.dllを
> 古いバージョンの2000.80.0から新しい2000.80.194.0へ変更もしましたが、
> 症状は変わりませんでした。
> 
> なお、PCの環境は下記の通りです。
> OS:WindowsXP SP3
> IDE:eclipse3.4.2(pleiades-all-in-one-java)
> 
> XAMPP Version 1.6.3a Bundle with:
> - Apache 2.2.4
> - MySQL 5.0.45
> - PHP 5.2.3 + PHP 4.4.7 + PEAR
> - PHP 5 to 4 Switch 1.0
> - XAMPP Control Version 2.5 from www.nat32.com
> - XAMPP Security 1.0
> - SQLite 2.8.15
> - OpenSSL 0.9.8e
> - phpMyAdmin 2.10.3
> - ADOdb 4.94
> - Mercury Mail Transport System v4.01b
> - FileZilla FTP Server 0.9.23
> - Webalizer 2.01-10
> - Zend Optimizer 3.3.0
> - eAccelerator 0.9.5.1 fur PHP 5.2.3
> 
> 以上です。
> 何とご協力のほど、よろしくお願いします。
> 
> 
> _______________________________________________
> S2Container-PHP5 mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/s2container-php5
> 


S2Container-PHP5 メーリングリストの案内