【问题标题】:How to store token in SQL server如何在 SQL Server 中存储令牌
【发布时间】:2013-08-05 22:54:31
【问题描述】:

我有 3 种类型的访问令牌需要存储到 SQL Server 数据库: 谷歌访问令牌, FB 代币,以及 我的自定义令牌是 GUID。

我想将所有 3 个放在同一个数据库列中。如果我选择数据类型 uniqueidentifier,我无法在该列中保存例如 google 令牌。 选择哪种数据类型来存储所有 3 种令牌类型?

【问题讨论】:

  • 必须是字符串或二进制。本来以为 3 列或 3 个表会是更好的选择。你能假设所有三个令牌都可用吗?
  • 我建议使用varbinary
  • 我一直在考虑 3 列,但我将使用两列 UserId 和 Token 创建复合主键,因此如果用户有多个令牌,则新令牌将是表中的新条目

标签: sql sql-server guid access-token sqldatatypes


【解决方案1】:

如果类型确实不同,请使用常规 NVARCHAR。

铸造会很棘手,但如果您想将它们存储在同一列中,这是唯一的方法

【讨论】:

  • 我已经看到 FB 令牌不应超过 300 个字符。 Guid 是 255 个字符。我认为谷歌也在这个范围内,所以如果我选择 NVarChar,我可能会输入 NVarChar(300)。
  • 是的,您将使用 NVARCHAR(X),其中 X 是不同标记的最大大小。
猜你喜欢
  • 1970-01-01
  • 2018-06-24
  • 1970-01-01
  • 1970-01-01
  • 2020-07-04
  • 1970-01-01
  • 1970-01-01
  • 2013-07-08
  • 1970-01-01
相关资源
最近更新 更多