【发布时间】:2013-12-15 17:36:01
【问题描述】:
作为多租户数据库的常用方法,我在每个表中都有一个 TenantId,这又与 suser_sid 相同,并且基于他的表的视图通过 TenantId=suser_sid() 过滤。
虽然这在大多数情况下都可以正常工作,但由于我的 suser_sid() 返回数据类型 varbinary(85),TenantId 的自然数据类型是 varbinary(85)。
由于显而易见的原因,这并不适合包含在主键或外键关系中,因为我认为在主索引中使用可变长度是一个坏主意(如果我错了,请告诉我)。
对 TenantId 使用 binary(85) 会更好吗?还是我应该使用 bigint,然后像这样转换 Convert(bigint, suser_sid()) 并与之进行比较,并希望不同租户不会发生冲突。
【问题讨论】:
标签: sql sql-server multi-tenant