Archive for 4月 15th, 2013

  1. Hello, Connector/NET(ClojureCLR) World!

    Posted on 4月 15th, 2013 by cx20

    Connector/NET(ClojureCLR)

    Connector/NET は、.NET ベースの MySQL 接続用 API である。
    以下は ClojureCLR による Connector/NET ライブラリを使用した MySQL への接続例となっている。

    ソースコード(ClojureCLR + Connector/NET + MySQL)

    (System.Reflection.Assembly/LoadWithPartialName "System.Data")
    (System.Reflection.Assembly/LoadWithPartialName "MySql.Data")
     
    (import '(MySql.Data.MySqlClient MySqlConnection))
    (import '(MySql.Data.MySqlClient MySqlCommand))
    (import '(MySql.Data.MySqlClient MySqlDataReader))
     
    (def conStr "server=localhost;user id=root;password=P@ssW0rd")
    (def sqlStr "SELECT 'Hello, Connector/NET World!' AS Message")
    (def con (MySqlConnection. conStr))
    (def cmd (MySqlCommand. sqlStr con))
    (.Open con)
    (def reader (.ExecuteReader cmd))
    (if (.Read reader)
        (do
            (System.Console/WriteLine (.GetName reader 0))
            (System.Console/WriteLine "---------------------")
            (System.Console/WriteLine (.GetValue reader 0))
        )
    )
    (.Close reader)
    (.Close con)

    コンパイル方法

    C:¥> Clojure.Main hello.clj

    実行結果

    MESSAGE
    ---------------------
    Hello, Connector/NET World!