手前味噌で恐縮ですが、書籍「はじめてのVine Linuxサーバ」が工学社さんから出版されました。
書籍紹介ページ
私にとってもはじめての書籍ということで大分気合が入りまして、執筆活動は1年と2ヶ月程、続きました。
何はともあれ無事に出版できて感無量です。
4/22追記
サポートページを作成しました。
C++でDBへアクセスするにはMFCだの、ADOだのややこしいライブラリをリンクするか、黙ってCで記述(各DBのライブラリを直接呼び出すコードを記述)するか、マネージドコードの仲間入りになるかになる。
最近流行りの言語(PHPとか)はあっさりDBをサポートしているのにC++/STLでさくっとSQLを書きたい場合、結構骨が折れる。
と言う訳で、なんちゃってodbcクラスを作りました。
以下のようにSQLが発行できちゃいます。
db, "INSERT INTO test( c1, c2) VALUES(?,?)", "test", 100, endsql;
ぱっと見、何がなんだか分からないかもしれませんが、キモはSQL文に続けてパラメータが記述できる点で、結構楽にSQLが発行できます。
(見る人が見れば凶悪な演算子のオーバーロードに見えるかもしれないが・・・)
ちなみに、様々なDBに対応する為と、Linuxへの移植性を考えてODBCにしました。
開発環境
1.Windows
VC++ .NET 2003 / WINDOWS XP Pro 64(32ビット環境)
Access 2000 / SQL Server 2005(Developer Edition)
2.Linux
GCC 3.3.6 / unixODBC 2.2.11 / Vine Linux 4.2
MySQL 5.0.27 / SQLite3
ODBCドライバは、Vine Linuxにはない、別途インストールした。
※MySQL-Connector/ODBCは、MySQLのサイトからダウンロード(RPM、3.51)
http://dev.mysql.com/downloads/connector/odbc/3.51.html
RPMのインストール時にエラーが出たが単純なSELECTはできた
※SQLite3のODBCドライバは、以下のサイトからダウンロード(0.79)
http://www.ch-werner.de/sqliteodbc/
ソースRPMをダウンロードし、コンパイル、インストール
download ダウンロード(使い方・ヘッダファイル・サンプルおよびサンプルプロジェクト 2009/5/7アップデート)