什么是sqlite的好OO C ++包装器
我想为sqlite找到一个好的面向对象的C ++(而不是C)包装器。人们推荐什么?如果我们有几个建议,请将它们分开答复以进行表决。另外,请指出我们是否对建议的包装纸有任何经验,以及如何使用它。
解决方案
我已经使用了这个http://www.codeproject.com/KB/database/CppSQLite.aspx,但是我已经使用了C#,所以现在可能会有更新/更好的版本
这个图书馆很棒。
http://www.sqlapi.com/
该库有Windows和Linux版本可用,我在几分钟内就可以启动并运行。
SO ++是C ++中数据库的另一个很好的包装器。它不是OO,而是更现代的C ++。
它支持Oracle,PostgreSQL和MySQL。一个SQLite后端在CVS中。
http://www.codeproject.com/KB/database/CppSQLite.aspx太棒了,非常容易移植,我花了半个小时左右的时间在bcb5(omg)上工作。它尽可能的薄,而且易于理解。有很多例子可以涵盖我们需要了解的每件事。它使用异常进行错误处理,我对其进行了修改,以在几分钟内提供返回代码。唯一棘手的问题是创建我们自己的lib文件,但没有提供。
try { CppSQLite3DB db; db.open(asFileName.c_str()); db.execDML("Update data set hrx = 0"); } // try catch (...) { } // catch
没有比这更简单的了.....
我们是否已成功将其移植到mingw-3.4.5?我们将共享移植的版本吗?
谢谢。
http://www.codeproject.com/KB/database/CppSQLite.aspx太棒了,非常容易移植,我花了半个小时左右的时间在bcb5(omg)上工作。它尽可能的薄,而且易于理解。有很多例子可以涵盖我们需要了解的每件事。它使用异常进行错误处理,我对其进行了修改,以在几分钟内提供返回代码。唯一棘手的问题是创建我们自己的lib文件,但没有提供。
也许你可以看看
http://pocoproject.org
或者
白金C ++框架
使用Qt,它对SQLite具有很好的约束力,非常适合其总体设计
Oracle / OCI / ODBC模板库
我对找到的任何一个都不满意,所以我写了自己的:sqlite3cc。
这是一个代码示例:
sqlite::connection db( filename ); sqlite::command c( db, "UPDATE foo SET bar = ? WHERE name = ?" ); c << 123 << name << sqlite::exec; sqlite::query q( db, "SELECT foo FROM bar" ); for( sqlite::query::iterator i = q.begin(); i != q.end(); i++ ) std::cout << i->column< std::string >( 0 ) << "\n";
这确实很诱人,但可以继续进行下去...
我直接从C ++使用sqlite,添加了C ++抽象层后看不到任何值。它是相当不错的(并且高效)。