Posted on

cakephpのdatabase.phpのprefixを使用しました。

新しいシステムをレンタルサーバーにアップする際に、データベースが1つしか存在せず、新たにデータベースを作ることもできず、すでに他のシステムのテーブルが存在し、データベースが利用されている状態にありました。既存システムと新システムのテーブルを簡単に区別する必要があると思い調べました。単純にテーブル名を変更すると、MVCモデルのファイル名やフォルダ名も変更する必要が出てきます。調べていくうちに、cakephpのdatabase.phpでプレフィックスを指定できることが判明し、’prefix’ => ‘okushin_’,ように定義しました。当然MySQL側でも
mysql> ALTER TABLE 古いテーブル名 RENAME 新しいテーブル名;
のコマンドにてテーブル名をusersからokushin_usersのように新システムに関係するテーブルすべてにokushin_をつけてテーブル名を変更しました。するとMVCモデルでのMのuser.php、Vのフォルダ名users、Cのusers_controller.phpのファイル名フォルダー名はそのままでシステムが正常に動作しました。とても簡単で利用しやすい機能だと思い紹介してみました。
Posted on

A5SQL Mk-2のツールを検証しました。

A5SQL Mk-2のツールを検証しました。
検証は、fedora14上のMySQLにODBC経由で接続し行いました。
ODBCの設定に、MySQL側にも設定が必要で、時間を要しました。
MySQLの設定は、以下のような設定です。
mysql> grant all privileges on DB名.* to アカウント名@’IPアドレス/サブネットマスク’ identified by ‘パスワード’;
コントロール パネル\すべてのコントロール パネル項目\管理ツールにて、
データソース(ODBC)をクリックして、ODBCデータソースアドミニストレーターにて、
システム DSNを設定します。
これで準備は完了です。
A5SQL Mk-2のツール[A5M2.exe]を立ち上げて、データベースの追加と削除を行います。
ODBCシステムデータソースを列挙するをチェックして、追加ボタンを押下します。
データリンクプロパティで先ほど設定したODBCのデータソースを選択して、接続テストをします。
これで、A5SQL Mk-2のツールが使用できる状態になります。
確認した内容としましては、下記4点です。
1.SQLの実行
2.データの参照
3.ER図のリバース生成
4.テーブル定義書作成
【よかった点】
1.データの参照では、レコードの追加や削除ができ、こちらはテストデータを作成するなどで利用できそう。
2.テーブル定義書作成は、体裁を整える機能としては有効に利用できるのではないかと思います。
【残念だった点】
1.テーブル作成のSQLを実行しましたが、その場ではテーブルが追加されず、立ち上げ直して初めて参照できるようになる点
2.ER図のリバース生成は、MySQLなので、外部キーの設定情報などの確認が出来なかった点
総合評価:弊社では、現在EXCELにてテーブル定義を行い、MySQLに登録して使用しています。EXCEL作成時の項目に対するデータの定義も行っており、その記述がMySQLではできない点もあるために、このツールを積極的に利用するという結果には至りませんでした。ツールの持っている機能はとてもすばらしいと思います。用意されている機能は、他のデータベースではもっと有効に利用できるのだろうと思いますが、MySQLでは、少し物足りないように思いました。また、MySQLだけなのかもしれませんが、設計するためのツールという位置づけでは利用できないと思いました。
利用されている方で、私どもが間違った認識をしている点などが御座いましたら、ご指摘頂けましたら幸いです。