2011-02-15 199 views
2

我想写一个用于存储OAuth访问令牌的mysql数据库架构,该架构足够通用,因此它能够支持符合OAuth标准的任何提供者。用于存储OAuth令牌的最佳数据长度

为了实现这个目标,什么是明智的数据长度?为什么?据我所知,标准并没有强制执行最大长度,我不想在我决定支持恰好使用更大标记的新提供者时更改列长度。

如果这不可行/可行,那么支持更受欢迎的OAuth提供商的理由是什么?为什么?

选择的解决方案

使用一个未定义长度的数据类型似乎是我的情况下,唯一充分通用的选择。

+3

你的问题是基于错误的假设,即选择尽可能小的长度总是有利的。这对每个数据库都是不正确的。例如,在PostGreSQL中,无限长度的`text`类型与固定大小`char`一样高效。 – mikerobi 2011-02-15 02:00:17

回答

6

如果您不知道确切的长度,可以使用text数据类型。