关于sqlite以及pyqt的使用问题

发布于 2022-09-04 06:16:37 字数 654 浏览 12 评论 0

现在要做一个邮件管理软件,之前做的版本是把收到的邮件保存成文件的形式,但是后来想要实现查询的功能,感觉还是用数据库方便一些,所以目前初步想法是将接收到的邮件信息保存到sqlite数据库中去,现在遇到有如下问题(问题可能有点多,写了编号,可以按编号给个思路即可,先谢谢了)

  1. 我想把邮件以text的类型保存到sqlite,所以想问一下每个字段长度是有限制的吗?

  2. 邮件可能会有附件,附件该怎么保存?sqlite可以保存图片之类的吗?如果用文件形式保存,那怎么将附件和该邮件对应起来,也就是说到时候查看邮件的时候怎么知道他的附件是哪一个?

  3. 还有就是我需要将邮件以列表的形式展示出来,如下图

但是很明显我的邮件显示都是乱序的,有什么办法实现QListWidget控件将最新的邮件添加到最上面?有什么办法可以将邮件按时间顺序排序?
4.还有一个问题就是将邮件保存到sqlite后,怎么唯一标识每封邮件?如果用id的话,怎么自动设置和怎么避免重复?
5.如果要接收新的邮件,有什么办法可以只接收最新的邮件,而不去重复接收已经接受过的邮件?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

九八野马 2022-09-11 06:16:37
  1. 不同类型的字段长度是不一样的,有大有小,不能超出规定的长度;

  2. 附件可能会出现很多种文件类型,不仅仅是图片,所以建议上传到服务器某个位置或云存储(如:七牛),然后数据库用一个字段来保存服务器文件路径或云存储URL;

  3. 在邮件保存到SQLite的时候,给一个接收时间,所有的邮件按接收时间降序排序;

  4. 设计数据库的时候可以指定一个自增ID,每次创建邮件都会自动生成一个唯一标识;

  5. 如果获取邮件的接口有唯一的标识,可以将该唯一标识保存起来,并设置为唯一键或者主键,然后每次获取到邮件后到数据库中进行比对,如果有就不保存了。

建议你去学习一下数据库的基础知识,从你的提问来看,感觉你对数据库几乎不怎么了解,加油。。。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文