PostgreSQL中过多的引用

时间:2016-06-23 19:57:21

标签: postgresql reference

这部分是一个最佳实践问题,部分是实践问题:

我创建了一个新的数据库表,它将重新传输一些旧信息(例如user_id / name,partner_application_id等)以及一些新信息(affiliate_id,transaction_id等)。我倾向于使用Postgres references逻辑来做类似的事情:

    create table transactions(
        transaction_id varchar(32) primary key,
        user_id serial references users(user_id),
        affiliate_id varchar(32) references affiliates(affiliate_id),
        partner_id varchar(32) references partners(partner_id),
        ...
        created_on date default now()
    );

我的问题是:这是一个正确/安全的事情吗?这似乎是很多参考资料,我无法在网上找到关于这是否合适的指导。也许更有意义的是不要担心引用只是因为我不必担心首先将新用户/附属机构插入各自的表中(以便处理出来的事件)由于异步性而导致的秩序)?

这里有很多依赖于其他表,但理想情况下,我宁愿抛出一个错误,因为没有定义的联盟/用户而不是有错误的数据进入系统并为可能不存在的用户记录事务。这里有任何经验法则或一般指导原则吗?

0 个答案:

没有答案