Gen*_*нин 59 sql sql-server configuration database-design
什么是系统表master..spt_values的目的是什么?
为什么提供它以及如何使用它?
它的类型,低值,高值的含义是什么?
更新:
Google搜索提供了数千个"其用途",例如:
一些帖子警告它的使用,因为它可以在SQL Server的未来版本中删除,但已经有代码脚本使用它来说明新SQL Server 11(Denali)的新功能:
Pon*_*ife 51
spt_values
SQL Server文档中未提及该表,但它可以追溯到Sybase时代,Sybase在线文档中有一些极少的文档可以在此注释中总结:
要查看它是如何使用的,请执行sp_helptext并查看引用它的系统过程之一的文本.
换句话说,阅读代码并自己解决.
如果您查看系统存储过程并检查表数据本身,则可以很清楚地使用该表将代码转换为可读字符串(以及其他内容).或者,正如上面链接的Sybase文档所说,"将内部系统值[...]转换为人类可读的格式"
该表有时也用于 MSDN博客中的代码片段 - 但从未在正式文档中使用 - 通常作为数字列表的方便来源.但正如其他地方所讨论的那样,创建自己的数字源比使用未记录的系统表更安全,更可靠.甚至还有一个Connect请求,用于在SQL Server本身中提供"正确"的文档编号表.
无论如何,该表完全没有文档,因此至少从实际角度来看,了解它的任何内容都没有重要价值:下一个servicepack或升级可能会完全改变它.知识分子的好奇心当然是另一回事:-)