此实验用QT designer设计UI界面,python语言,主要用pyqt5,mysql数据库
实验要求:
- 该系统的E-R图至少包括8个实体和7个联系(必须有一对一联系、一对多联系、多对一联系)
- 在设计的关系中需要体现关系完整性约束:主键约束、外键约束,空值约束
- 对几个常用的查询创建视图、并且在数据库中为常用的属性(非主键)建立索引
- 该系统功能必须包括:插入、删除、连接查询、嵌套查询、分组查询。其中插入,删除操作需体现关系表的完整性约束,例如插入空值、重复值时需给予提示或警告等
- 加分项:界面友好、包含事务管理、触发器等功能
实验具体实例:
- 用户可以在该系统中注册、修改个人基本信息,包括姓名、性别、出生日期、电子邮箱、通讯地址、用户密码(注意,一个用户可以注册多个电子邮箱,但作为用户名使用的只能有一个);
- 用户可以在该系统中录入、修改个人经历,包括教育经历(教育级别、起止年月、学校名称、学位)、工作经历(工作单位、起止时间、职位)。注意,用户可以全部、部分或不录入个人经历信息
- 用户可以在该系统中搜索、添加、删除好友,还可以添加、修改、删除好友分组,向好友分组中添加、删除好友
- 用户可以在该系统中发表、更改、删除日志,系统记录日志的发表或最后更新时间
- 用户可以对好友日志或其他可回复的日志进行回复,系统记录回复信息的发表时间、内容、被回复的用户,注意,若用户删除自己发表的日志,则相关回复信息也将全部被删除
- 用户可以对好友信息或其他可回复的信息进行回复,系统记录回复信息的发表时间、内容、被回复的用户
- 用户可以分享好友的日志或其他公开的可以分享的日志,并对该日志进行评论,系统记录分享时间、评论时间和评论内容
实验运行页面:
登陆页面
注册页面
昵称和密码不能为空,其他的均可为空
注册好之后根据返回的userid(类似于qq号)登录页面
主页面
个人设置
进行修改/增加个人信息,我只演示其中一个
点击保存,查看数据库,已经提交
这里我没写查询,你可以仿照后面的查询代码补全此功能
联系人
头像是随机产生的,每一次都可能是不一样的头像(有自己设置的image文件)
增加分组
增加好友
这里稍微有些逻辑上的bug,关闭重启程序,其实已经加好了(我太菜了)
消息
发送消息
登录6的账号
动态
查看空间
只能看到自己好友以及自己发布的说说
发布说说
发布评论
若用户6,进行评论
更新空间
删除日志
23号删除刚刚发布的说说,可以删除说说已经相关评论
再次查看
后记:由于此实验是本人第一次使用QT,且从实验开始学习QT到实验结束写这个文章,也不过四五天的时间,所以实验一定有不完善的地方,有些功能我也没有实现,但实现了基本的框架,希望学弟学妹可以在此基础上进行完善
下载方式
第一种,码云:
源代码地址:https://gitee.com/Mackenzie-G/database-experiment
第二种:
csdn:https://download.csdn.net/download/weixin_45937957/85251520