【发布时间】:2016-01-03 18:01:18
【问题描述】:
在数据库中为某些用户操作建模的最佳方法是什么?假设您可以进行一组可扩展的操作,例如:登录、注销、配置文件更新和停用 等等......
将动作作为字符串存储在一个列中的第一种方法....
CREATE TABLE user_actions
(
id bigserial NOT NULL,
user_id integer,
created_on timestamp with time zone NOT NULL,
action character varying(20) NOT NULL,
)
或为每个操作创建一个布尔列,添加新操作时更多,但可能更快更容易搜索...
CREATE TABLE user_actions
(
id bigserial NOT NULL,
user_id integer,
created_on timestamp with time zone NOT NULL,
login boolean NOT NULL,
logout boolean NOT NULL,
profile_update boolean NOT NULL,
profile_deactivated boolean NOT NULL,
)
希望得到您的反馈和建议
【问题讨论】:
标签: database database-design architecture data-modeling