2011年11月25日金曜日

OpenOffice Base へODBC経由で接続はできるのか?

MySql への ODBC接続はできることがわかった(OpenOffice BaseからODBC経由でMySqlに接続することはできた。)のですが、今度は、じゃあOpenOfice Base に対して、ODBC接続などができるのだろうかという疑問がわいてきました。インターネットで探しているのですが、見つからないのでおそらく、少なくとも今の時点ではできないのだろうと推測しています。

2011年11月23日水曜日

MySQL への ODBC 経由での接続

Windows でMySQL への ODBC 経由での接続をするために、まずは、mysql-connector-odbc-5.1.9-win32.msi を以下のサイトからダウンロードしました。

http://dev.mysql.com/downloads/mirror.php?id=404193#mirrors

(このサイトでは、始めてダウンロードする際にはユーザ登録をするように求められるのですが、下の方に以下のようなリンクがあったのでクリックすると、ユーザ登録しなくてもダウンロードできるページに移動してくれました。

» No thanks, just take me to the downloads!



ダウンロードしたmsiファイルをダブルクリックしてインストールを行い、その後、OpenOfficeのBaseから、ODBC経由で MySQLへ接続して、テーブルの中身が見られることを確認しました。

---------------------------------------------------------------------------------------------------

尚、同じようなことを、Linux上(Ubuntu)でも行うには以下のサイトを参照させていただきました。

http://woa-win.ddo.jp/ubuntu/0103.php
http://sourceforge.jp/magazine/07/02/28/0121236
http://nstage.ddo.jp/pukiwiki/index.php?OpenOffice.org%2FBase%2FDB

sudo apt-get install か synaptic で unixODBC libmyodbc php5-odbc unixodbc-bin をインストールしたあとで sudo ODBCConfig を使って、ODBCのDSN登録をします。(なおUbuntu12.04になってから、’sudo ODBCConfig’は使用できなくなっており代わりに’sudo ODBCManageDataSourcesQ4を実行します。’) DSN登録をした結果は/etc/odbc.ini に書き込まれます。またドライバーの情報は/etc/odbcinst.ini に書き込まれます。





Ubuntu12.04になってから、mysqlのODBCドライバーの位置が/usr/lib/i386-linux-gnu/odbc/の配下に変わったようです。以下は、私のマシンの/etc/odbcinst.iniの中身です。ご参考まで。


[MySQL ODBC Driver]
Description             =
Driver          = /usr/lib/i386-linux-gnu/odbc/libmyodbc.so
Setup           = /usr/lib/i386-linux-gnu/odbc/libodbcmyS.so
UsageCount              = 1
CPTimeout               =
CPReuse         =








いったんODBCのDSN登録ができれば、あとはODBC経由で、PHPからアクセスできるようになります。以下は、AccessデータベースをODBC設定して、PHPからアクセスする方法ですが、参考になると思います。
http://www.tsware.jp/study/vol14/php_04.htm

また、いったんODBCのDSN登録ができれば、Ubuntu 上で、 isql コマンドを使って、ODBC登録されたデータベースにアクセスできるようになります。例えば、my.sql というファイルにSQLコマンドを記述しておき以下のようなコマンドで実行することができます。

isql ’DSN’ ’user’ ’pass’ -w < my.sql

2011年11月22日火曜日

WindowsXP で ruby をインストールする。

WindowsXP で ruby をインストールするには以下を参照しました。

http://www.ruby-lang.org/ja/downloads/


ActiveScriptRuby は以下のサイトからダウンロードできます。現時点の最新正式版は、バージョン1.9.3-p0 のようです。

http://www.artonx.org/data/asr/
ダウンロードしたRuby-1.9.3.msi を実行します。

    PHP で配列をソートするには

    PHP で配列をソートするには、例えば以下のようなサンプルのようにする。


    -----------------------------------------------------
    <?php
    function sortArr($arr){
        sort($arr,SORT_NUMERIC);
        for($i = 0; $i < count($arr);$i++)
            echo ($i+1).":".$arr[$i]."\n";
    }

    echo "項目を入力 (カンマで区切って記述):";
    $a = trim(fgets(STDIN));
    sortArr(explode(",",$a));
    ?>

    -----------------------------------------------------

    サンプルその2
    
    
    function sortArr($arr){
        asort($arr,SORT_STRING);
        foreach($arr as $key => $value)
            echo $key . ": " . $value . "\n";
    }
    
    echo "項目を入力(カンマで区切って記述):";
    $a = trim(fgets(STDIN));
    sortArr(explode(",",$a));
    

    explodeを使ったサンプル

    function explodeNow($str){
    
            $arr = explode(" ",$str);
            for($i = 0;$i < count($arr);$i++)
                 echo $i . ": " . $arr[$i] . "\n";
    
    }
    
    
    echo "テキストを入力:";
    $a = trim(fgets(STDIN));
    explodeNow($a);
    

    implodeを使ったサンプル

    
    function implodeNow($arr){
    
            $str = implode ("、",$arr);
            echo $str . "。";
    }
    
    
    $arr = array();
    while(true){
        echo "テキストを入力";
        $a = trim(fgets(STDIN));
        if ( $a == ""){break;}
        array_push($arr,$a);
    
    }
    implodeNow($arr);
    
    

    2011年11月21日月曜日

    WindowsXP で XAMPP をインストールする。

    WindowsXP で XAMPP をインストールするには

    以下のサイトからダウンロードできる。現在のバージョンは、XAMPP 1.7.7

    http://www.apachefriends.org/jp/xampp-windows.htm



    なお、以下のサイトからPHPエディタをダウンロードできる。現時点でのバージョンは、1.3.3
    http://phpspot.net/php/phpeditor.html

    Ubuntu11.10 で ruby を使う

    Ubuntu では ruby が使えるかなと思って rubyというコマンドを入力してみると以下のようなメッセージが表示されました。sudo apt-get install ruby1.9.1 を実行すれば使用できるようになるようです。(ただし、私は始めは1.9.1を使っていたのですが、Nokogiriをインストールした頃からバージョンが、1.8になってしまいました。)


    ---------------------------------------------------------------------------------

    $ ruby
    プログラム 'ruby' は以下のパッケージで見つかりました:
     * ruby1.8
     * ruby1.9.1
    次の操作を試してください: sudo apt-get install <選択したパッケージ>
    ---------------------------------------------------------------------------------