这真是一个“原谅我的无知”问题,如果它不符合要求就道歉.
我想开发一个相当简单的数据库应用程序.它将基于桌面和轻量级,所以我很高兴sqlite就足够了.我也决定过Qt和pyside.
通过大量的教程,我不断遇到sqlalchemy和exlixir(以及Camelot).我基本上只是想知道在Qt中使用sqlalchemy(和elixir)比基本Qsql有什么优势?如果我不使用这样的东西,我会失踪什么.
我知道这是基本的,但在我开始自我学习过程之前,我只想在脑海中清楚地说明这一点.
解决方法
基本上,这里有3个选项.
优点:
>与Qt集成可能更容易
缺点:
>难学
>是为C制作的,需要一些冗余代码
>需要在项目中再添加一个Qt模块
>文档看起来很糟糕
sqlite3模块
这是Python标准库中的一个模块,可以与sqlite数据库一起使用.
优点:
>非常容易使用
>代码非常简洁
>没有外部依赖
缺点:
>您必须编写SQL查询
SQLAlchemy ORM
优点:
>对象关系映射器:公开面向对象的接口并为您进行SQL查询
>一旦设置了表信息,使用数据库就是一种纯粹的快乐
缺点:
>陡峭的学习曲线
这是我的结论:
如果您习惯于编写SQL查询而不必对数据库进行大量工作,请使用sqlite3.如果你不介意花些时间学习一些很棒的东西,那就选择sqlAlchemy吧.
关于您提到的其他项目:Elixir似乎死了,sqlAlchemy现在内置了它的功能,可能更好.卡米洛特很奇怪……我不会用它.