C++数据库OTL和SOCI的优缺点是什么?特别是,我的项目使用 SQL Server 2008 的项目有哪些差异?
我以前也没有使用过,在我的项目期间我不想更改库。
几年前,我比较了它们,并决定与 Soci 一起使用 Sql Server ODBC 和 Sqlite 后端的项目。那时,Soci 和 OTL 似乎都在积极维护,但 Soci 的界面更好。从那以后我没有使用过 OTL,但我在一个中型项目中使用了很多 Soci。
Soci 遇到了一些意想不到的问题,例如字符串长度的限制(2008 年的 3.0 版)。Soci 的主要问题是它没有得到非常积极的维护。2008 年到 2011 年之间没有更新,所以多年来我不得不编写变通办法,自己修复代码或使用存储库中的实验性东西。由于缺乏更新,我考虑过转向 OTL,但还没有迈出这一步。我确实更喜欢 Soci 的简洁性而不是 OTL,但从长远来看,积极维护代码更为重要。
我还没有尝试过新的 Soci 版本 (2011-10-11),但如果它解决了我之前的一些问题,我会非常高兴。Soci 是一个很棒的数据库库,我希望它得到更多的爱和关注。
所以,简而言之。OTL 可能是一个更安全的选择,因为它似乎更频繁地更新(但我没有使用它,所以我不能肯定地说)。如果您的口味和我的一样,那么 Soci 会“更好”并且它完全可用。我肯定会再次将它用于小型项目,但可能不会用于大型项目,因为维护有限。
编辑:我刚刚尝试了新的 Soci 3.1 版本,他们已经解决了 odbc 后端中长字符串的问题。我想我会在 Soci 坚持一段时间。