タグ

goとdatabaseに関するMukeのブックマーク (2)

  • Big Sky :: Go言語向けの ORM、gorp がなかなか良い

    そろそろWeb周りだけでなくDB周りも揃ってきて、格的なアプリケーションが書ける様になってきました。 DBを扱うには、SQLを実行する様な物は標準でサポートしていましたが、gorp を使うと極力SQLを書かずにデータベースを扱う事が出来ます。 coopernurse/gorp - GitHub Go Relational Persistence I hesitate to call gorp an ORM. https://github.com/coopernurse/gorp まずエンティティとなる構造体を宣言します。ここでは Person という構造にします。 type Person struct { Id int32 Name string } 次に、データベースマッパーを作ります。 db, err := sql.Open("sqlite3", "./foo.db") dbmap

    Big Sky :: Go言語向けの ORM、gorp がなかなか良い
  • Go言語でSQLのトレースをする

    ぴっぴ先輩が「Go言語で発行したクエリを確認したい」って言ってて、 「MySQL使っているならGeneral Logを吐けばよいのでは?」と返したんだけども、 もっと汎用的な方法はないものかと考えてみました。 Golangdatabase/sql はどんなDBでも対応できるよう、ドライバを自由に入れ替えることができます。 ドライバは単にdatabase/sql/driverにあるインターフェースを満たしている何かなので、 ユーザが自由に作ることができるし、interfaceを経由して直接呼び出すことも可能です。 この仕組を使って、別のドライバにそのまま渡すプロキシを作れば、ログを吐けるのでは?ということでやってみました。 go-sql-proxy 使い方 まず最初にgo-sql-proxyをドライバとして登録します。 hooks := &proxy.Hooks{ // Hook fun

  • 1