为啥我无法在 SQL Server Management Studio 中打开此表?
Posted
技术标签:
【中文标题】为啥我无法在 SQL Server Management Studio 中打开此表?【英文标题】:Why can't I open this table in SQL Server Management Studio?为什么我无法在 SQL Server Management Studio 中打开此表? 【发布时间】:2010-09-11 07:29:37 【问题描述】:我通过 C# 程序创建了几个表,命名为 [MyTableOneCustom0] 和 [MyTableTwoCustom0]。当我尝试通过 MS SQL Server Management Studio 中的“打开表”从这些表中返回所有值时,我收到以下错误:
错误来源: Microsoft.VisualStudio.DataTools
错误消息:异常已出现 由调用的目标抛出。
但是,我仍然可以通过 SELECT * 语句调出所有数据。
有人知道这是什么原因吗?
【问题讨论】:
【参考方案1】:根据位于Egg Head Cafe 的类似帖子,如果查询中明确包含的列过多,Management Studio 似乎会引发异常。 Select * 隐式返回它们,因此似乎没有问题。
我在这个表中有超过 800 列,所以我确定这就是问题所在。
【讨论】:
如果你真的需要 800 列,你可以考虑使用稀疏列 (SQLServer 2008)【参考方案2】:我不敢问,但通常你不会想要 800 或数据库中的列,那么你为什么要这样做呢?考虑到数据库如何存储信息,您可能会在数据检索和存储方面为自己制造许多问题。一整行有多少字节的数据?您知道可以存储在一行中的数据字节数是有限制的。当一行超出这些限制时,您可能会遇到输入数据的问题。即使存在一对一的关系,最好还是拆分成单独的表。在 BOL 中阅读有关数据页和数据存储方式的信息,以了解我为何如此担心。
【讨论】:
以上是关于为啥我无法在 SQL Server Management Studio 中打开此表?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 SQL Server 无法识别,即使我有对 DAL05.dll 的引用?
为啥我安装了Windows server 2008 R2 无法连接网络