Hatena::ブログ(Diary)

bobchinの日記 このページをアンテナに追加 RSSフィード

2008年06月02日(月)

[][]メモ 10:44 メモ - bobchinの日記 を含むブックマーク

ASP+MSDEで書かれたちょっとしたものがあるが、どうもMSDEの扱いがわからんので

いつでもXAMPPに乗り換えれるようにすべくrhacoを使って焼き直しにトライしてるところ。

rhacoを見ていたらblogkitというのが参考になるらしいがどこにあるかわからなかったんだけど、

本体(=ライブラリイメージ)とアプリ(=jaja?)は場所が違うみたい。。。

本体は

https://rhaco.svn.sourceforge.net/svnroot/rhaco

jajaは

http://jaja.googlecode.com/svn

プロジェクトページには「trunk」がついてるけど、トップはアプリ名のフォルダなので「trunk」は無さげ。。。

[][]メモ 11:19 メモ - bobchinの日記 を含むブックマーク

DBの設定はproject.xmlにXMLで記述するけど、記述できるものがよくわからなかった。

XMLなのでスキーマ定義?を参考にすればいいことに気づく。

http://media.rhaco.org/project.xsd

databaseタグ内のdefaultとかcolumnタグ内のchoicesとかはなかったけど、

機能追加で増えたのかなぁ?

括弧は省略可

<database name="" [class=""]>
    <table name="" [class=""]>
        <column
            name="" 
            [var=""]
            [default=""]
            [label=""]
            [reference=""]
            [type="" ]
            [size="" //要確認]
            [max_digits=""]
            [decimal_places=""]
            [chartype=""]
            [min=""]
            [max=""]
            [require=""]
            [requirewith=""]
            [primary=""]
            [unique="" ]
            [uniquewith="" ]
            [dbtype=""]
            [seq=""]
            >
            <choices>
                <data></data>
            </choices>
        </column>
        <extra></extra> //columnと同じ
        <description></description>
    </table>
    <map name="" [class=""]>
        <column></column> //columnと同じ
        <extra></extra> //columnと同じ
        <description></description>
    </map>
    <ext name="" class="">
        <column name="" [default=""]></column>
        <extra></extra> //columnと同じ
        <description></description>
    </ext>
    <description></description>
    <default>
        <class />
        <name />
    </default>
</database>

type指定なし
    name="id"=>serial
    それ以外 =>string

typeで指定できるもの([]は省略形のため括弧なしと同じとみなす)
    string,[str]
    text,[textarea]
    email,[mail]
    tel
    zip
    integer,[int]
    float,[double]
    date
    timestamp
    time
    birthday,[bd]
    serial
    boolean,[bool],[flag]

floatの指定方法
    float(1,1)

defaultに指定できるもの
    ※typeによる
    serial=>null
    integer,time=>null or 数値
    float=>null or 数値(少数)
    boolean=>Variable::boolで許容されているもの
    timestamp,date=>sysdate or 文字列(DBで指定できる関数とか)
    上記以外のTYPEの場合は文字列(DBで指定できる関数とか)

size指定
    size指定しない場合のデフォルト
    email=>255
    integer,serial,time=>22
    zip,birthday=>8
    tel=>13

KuniTsujiKuniTsuji 2008/06/02 12:45 MSDEってSQLServerのMSDEですか?
asp+SQLServerってPHPとPostgresとかとは全く違うものですからねー。

bobchinbobchin 2008/06/02 12:59 ですです。
最悪だったのが、OSにべったりなのでデータを移行しようとしたときに
マシン名を変えたらDBにアクセスできなくなったことがあったような。。。
ずっと同じモノ使い続けるのであればいいんですけどね。可搬性が悪い気がしてまして。

2007年08月30日(木)

[][]PEARパッケージ作ってみた 09:19 PEARパッケージ作ってみた - bobchinの日記 を含むブックマーク

1.2.1が出てたので、Xrefの更新とPEAR化をやってみた。

http://servlet.sakura.ne.jp/wiki/index.php?PEAR_PackageProjector

を試してみたかっただけ。

以下にありますが、動作確認はしてませんので自己責任で。

http://bobchin.net/pearpackage/

pear install http://bobchin.net/pearpackage/Rhaco-1.2.1.tgz

な感じでいけるはず・・・。

setup.phpの初めの起動で、「directory path of 'Rhaco.php'」に

Rhaco/

とすればよかったと思う。


rhacoコマンドなる怪しいものがあるので、d:\xampp\htdocs\rhacoアプリケーションを作成する場合は、

cd d:\xampp\htdocs
rhaco -c rhaco

もしくはフルパスで
rhaco -c d:\xampp\htdocs\rhaco

で、フォルダ作成&setup.phpをコピーしてくれるので、後はウェブサーバでアクセスすればいい・・・はず。

2007年04月25日(水)

[][]いろいろいじってます 13:48 いろいろいじってます - bobchinの日記 を含むブックマーク

まだ完全に理解していないので勘違いかもしれませんが。

TableObjectBaseですが、ActiveRecordのようにsave()で

インスタンスのデータをDBに登録すると思います。

で、updateのときに以下のようになってます。

if($dbUtil->update($dbUtil->get($this,new Criteria(Q::getNoneNew())))) return $dbUtil->get($this);
return false;

これって、いったんDBからSELECTしてきて・・・、

まではいいと思いますが、インスタンスのデータを上書きしていないのではないでしょうか?

こっちでいいのかも?とか思いましたが、どうなんでしょうか?

if($dbUtil->update($this)) return $dbUtil->get($this);
return false;