PDOの問題をまとめてみる。

PHP, MySQL5, PECL, SQLite

09:46:27, by dozo Email , 56 words, 6722 views   Japanese (JP) del.icio.us

予想だにしてませんでした。

(ノ・・)ン。。。。。。(((●コロコロッ

PHP5+PDO_MySQLでサイト構築は
私の中でかなり定番になりつつある。
PEAR::DBだと、PAER::DBをラッピングする様なものを作らなければならないのだが、
PDOだとそれが必要ない。
ネイティブ関数と同じC言語で出来ているので速度は申し分ない。
今のところ大きなトラブルもなく安定動作もしている。
Prepare Statementが使えるのも魅力の一つ。
SQL Injection問題が一気になくなる。


大きな問題はまだでていないが、
小さな問題はいくつかでている。

整理の意味を込めて、少しまとめてみよう。
環境はPHP5.2, PDO1.0.3である。

[More:]


●DSNが使いにくい
PDOのDSNはPEAR::DBのDSNと比べて使いにくい。
ユーザー名とパスワード部分がDSNと分離しているためだ。
(なんでPEAR::DB同じにしなかったのか。。。)
これが理由でPEAR::DBからの移植・相乗りなどが難しくなった。

●PEARライブラリとの連携
残念ながら、現状PEARライブラリと連携が全く取れない。
例えばPEAR::AuthでDB上のユーザー名、パスワードを取得する場合、
PDOを経由してデータ取得することは出来ない。
現状PEAR::DBなどを経由している。

●複数のprepareメソッド
prepareメソッドを実行するとPDOstatement Objectが返ってくる。
それをハンドリングして柔軟なクエリを実行しようとすることは多聞に考えられるのだが、
どうも、一つexecuteメソッドを実行すると
PDOstatement Objectを解放しない限り次のexecuteメソッドが実行できない。
動作に確実性がないのが一番困る。
そのあたりはMDB2の方が優秀か。

●「:(コロン)」問題
PDOのqueryメソッドを利用する際、
SQLの中に「:(コロン)」があると文字化けが発生する。
文字化けの理由はわかっていない(多分bind関連だと思う)が、
Prepare Statement(prepareメソッド, bindメソッド executeメソッドなど)を利用すると回避できる。

●取得最大サイズ
カラムに対してなのか、
レコードに対してなのか、
結果すべてに対してなのかはわかっていないが、
取得した結果の最大サイズが1MBを超えると、
内容が途中までしかでてこなくなる。
PDO::ATTR_MAX_COLUMN_LENというパラメータがPHP5.2からあるのだが、
使ってみても結果は変わらなかった。





その他諸々あった気がするが、
思いついたら追記していくことにする。


Trackback address for this post:

http://hain.jp/htsrv/trackback.php/111

Comments, Trackbacks:

No Comments/Trackbacks for this post yet...

Leave a comment:

Your email address will not be displayed on this site.
Your URL will be displayed.

Allowed XHTML tags: <p, ul, ol, li, dl, dt, dd, address, blockquote, ins, del, span, bdo, br, em, strong, dfn, code, samp, kdb, var, cite, abbr, acronym, q, sub, sup, tt, i, b, big, small>
(Line breaks become <br />)
(Set cookies for name, email and url)
(Allow users to contact you through a message form (your email will NOT be displayed.))
This is a captcha-picture. It is used to prevent mass-access by robots.

Please enter the characters from the image above. (case insensitive)

powered by b2evolution

shinobi

Neighbors
Relative
Favorites

極論istの技術屋を始めて早幾年。 流れの速い業界の波にもまれながらも精一杯生きている様をとくとごらんあれ。

Archives
スポンサー

Latest bookmark
Search

Categories

Who's Online?
Misc
Syndicate this blog XML

Valid XHTML 1.0! Valid CSS! Valid RSS 2.0! Valid Atom 1.0!