0

我正在开发允许用户从注册帐户或匿名发布的 Web 应用程序。我应该允许NULL在表中的UserId列中Post还是为未注册用户创建未经验证User并引用他们的 ID?


未经验证的用户

用户

| UserId | Name       |
+--------+------------+ 
| 1      | Unverified |
| 2      | Real User  |

邮政

| PostId | UserId | Post           |
+--------+--------+----------------+
| 1      | 1      | Blah blah...   |
| 2      | 1      | Blah blah...   |
| 3      | 2      | Blah blah...   |


                                       - 对 -

允许NULL

用户

| UserId | Name       |
+--------+------------+ 
| 1      | Real User  |

邮政

| PostId | UserId | Post           |
+--------+--------+----------------+
| 1      | NULL   | Blah blah...   |
| 2      | NULL   | Blah blah...   |
| 3      | 1      | Blah blah...   |
4

1 回答 1

0

不依赖 NULL 来表示含义通常被认为是一种很好的做法。我可能会使用 0 或 1 来表示匿名用户。也更容易搜索;您不必一直在 IS NULL 或 = 之间切换,具体取决于您是在搜索匿名用户还是真实用户。

于 2012-10-31T00:45:56.940 回答