最近流行りの言語(PHPとか)はあっさりDBをサポートしているのにC++/STLでさくっとSQLを書きたい場合、結構骨が折れる。
と言う訳で、なんちゃってodbcクラスを作りました。
以下のようにSQLが発行できちゃいます。
db, "INSERT INTO test( c1, c2) VALUES(?,?)", "test", 100, endsql;
ぱっと見、何がなんだか分からないかもしれませんが、キモはSQL文に続けてパラメータが記述できる点で、結構楽にSQLが発行できます。
(見る人が見れば凶悪な演算子のオーバーロードに見えるかもしれないが・・・)
ちなみに、様々なDBに対応する為と、Linuxへの移植性を考えてODBCにしました。
ダウンロード(2011/04/15 SourceForgeにプロジェクトを作成しました)
2009-04-22 05:57:16
はじめまして。
ダウンロードして使わせてもらいました。ヘッダにまとまってて使いやすそうです。
当方の環境はUbuntu8.10(2009/4/20の時点で最新の安定版です)
コンパイル時に3ヵ所エラーが出ましたので報告です。
(1) #include に関連した部分はにするようにとコンパイラに言われるので、そうしてみました。
(2)SQLGetData()の6番目の引数が、SQLINTEGER*ではなくSQLLEN*にしないとコンパイル通らず。rbufsizeという変数名で2ヶ所あります。
(3)SQLDescribeCol()の7番目の引数も同じく、SQLULEN*にしないとだめといわれたので、そのように変更しました。こちらは1ヶ所だけです。
以上ですが、ありがたく使わせてもらっています。
ありがとうございました。