我想知道对于带有SQL数据库的C ++有什么样的持久性解决方案?除了使用自定义SQL进行处理(并封装对DAO或类似内容的数据访问)之外,还有其他一些(更通用的)解决方案吗?
像某些通用库或框架(诸如Java和.NET的Hibernate&co之类)还是其他东西?(我什至没想到的事情也可以提出建议)
编辑:是的,我正在搜索更多的ORM解决方案或类似的东西来处理sql查询以及表和对象之间的关系,而不是数据库引擎本身。无论如何,感谢您的所有回答!
听起来您正在寻找一些ORM,这样您就不必再为手写的SQL代码而烦恼了。
您也没有提到您正在编写的应用程序类型,如果它是桌面应用程序,移动应用程序,服务器应用程序。
移动:最好使用SQLite作为数据库引擎,因为它可以嵌入并且占用空间小。
桌面应用程序:您仍应在此处考虑使用SQLite,但大多数桌面应用程序也可以选择始终保持与Internet的连接,在这种情况下,您可能希望为此任务提供网络服务器。我建议使用Apache + MySQL + PHP并使用轻量级ORM(例如Outlet ORM),然后使用标准HTTP发布调用来访问您的资源。
Server App:您在这里有更多选择,但是我仍然建议使用Apache + MySQL + PHP + ORM,因为我发现用脚本语言维护该层比使用C ++容易得多。