【发布时间】:2018-03-16 06:01:47
【问题描述】:
问题:您好,我在 QT 中使用 sqlite3 数据库。我的架构定义如下:
table users: table wishlist
------------ --------------
id id
balance, int balance, int
savings, int price
uid (users id)
任务是让用户可以在他的余额和储蓄字段之间转移资金,并且还能够向他的愿望清单项目汇款。
例如:用户打开对话窗口,选择资金来源,选择资金用途,写入金额并提交。提交对话窗口后,主窗口中的余额将更新为新的正确值。
我的想法:
在我的应用程序中,我应该能够从以下地址转账:(src -> dest)
(users.balance -> users.savings)
(users.savings-> users.balance)
(users.balance -> wishlist.balance)
(users.savings -> wishlist.balance)
(wishlist.balance -> users.savings)
(wishlist.balance -> users.balance)
用户在wishlist 中定义了项目,关系到用户有许多愿望清单项目。
我的想法是创建一个对话窗口,其中包含 2 列和 1 个字段用于金额。 2列中的数据应彼此相同。用户点击第一栏选择资金来源,点击第二栏选择目的地。
问题: 我应该使用什么(数据和视图模型)将数据填充到不同表的列中,并可以同时修改同一个表(用户)或单独(用户和愿望清单)中的余额值并保存到数据库?是否可以从多个数据源填充视图,然后能够正确保存修改后的值?它甚至是解决此类问题的正确方法还是我错过了解决此问题的更好方法?
【问题讨论】:
-
你能解释一下这是什么意思吗:
(users.balance -> users.savings) (users.savings-> users.balance) (users.balance -> wishlist.balance) (users.savings -> wishlist.balance) (wishlist.balance -> users.savings) (wishlist.balance -> users.balance) -
这些只是汇款说明(不是代码)。例如,用户的余额字段为 500,储蓄字段为 0。他将 250 转入储蓄,现在他有 250 的余额和 250 的储蓄。
-
你的表是什么关系?为什么uid是用户的id?
-
每个愿望清单项目都有 uid(用户的 id 字段),因为用户应该能够修改和只看到他的愿望清单项目