やはりZEND(Zend Framework)かな...

少し時間のある時にMySqlからSQLiteへの移植作業を行ってみた。

まずはPDOを使ってMySqlDBへの接続・・・
$pdo = new PDO("mysql:host=localhost; dbname=xxxxxxxx", $username, $password);  //PDOのコンストラクタに「DSN」、「ユーザ名」、「パスワード」を設定し、接続は完了です。
※何故、MySqlのPDOバージョンを作ったかと云うと、もし移植性が良いのであれば、SQLiteのPDOバージョンはこのコンストラクタを変えるだけで大丈夫と考えたからである。

一通り、コーディングし直して、PDOを使ってのMySqlのアクセスは成功した。
最初は少し慣れないところもあったが、最終的にはなかなか使い易いではないか

しかし、最終的にはどうしてもMySqlとSQLiteの間で互換の取れない所が残ってしまった。
それは、DBにデータを書き込む時に使うクオート関数「mysql_escape_string」である、ここだけはSQLite時に「sqlite_escape_string」と書き換える必用がある。
折角、PDOでコーディングしてもmysql_xxx、やsqlite_xxxなどと云った関数を使うのでは、データベースの依存が残ってしまいます。
その後、PDOでのクオート方法を探したが、結局見つからなかった

趣味ならともかく実務で使うには、このようなちょっとした事でも引っかかってしまう。

結局全く同じソースコードでPDOのDBハンドルのみを書き換えただけで、MysqlSQLiteの両方で使うのは無理と考え、ZEND(Zend Framework)で試みることにした。

目標は、DBシステムに依存しない、システムの開発です。(どのデータベースでもDBハンドル部のみの変更で動作するシステム)


新しい書込をする
「仕様・不具合」等に関してはここで書き込まずに「メールフォーム」にてお願いします!
既に投稿されている内容への返信は各投稿内容に付いている「返信」ボタンから行って下さい。

 No:  タイトル:
1970-01-01 09:00
 
お名前:
削除 編集 返信