SQL服務器的最大列數限制
每個短字符串列8,000 GROUP BY
字節,ORDER
字節BY 8,060
字節每行8,060
每個索引鍵的列數16
012每個寬表的外鍵具有16分
列分
列每個主鍵16分
列每nonwide表1024
列每個SELECT語句每4096分
列30000
列INSERT語句4096
列每個UPDATE語句(寬表)4096
當你把VARCHAR,NVARCHAR,VARBINARY SQL_VARIANT,或CLR超過每行
的列數n創建表的8,060字節的用戶定義類型的列和數據類型爲nvarchar
CREATE Proc [dbo].[CreateMaxColTable_Nvarchar500]
(@TableName nvarchar(100),@NumofCols int)
AS
BEGIN
DECLARE @i INT
DECLARE @MAX INT
DECLARE @SQL VARCHAR(MAX)
DECLARE @j VARCHAR(10)
DECLARE @len int
SELECT @i=1
SELECT @[email protected]
SET @SQL='CREATE TABLE ' + @TableName + '('
WHILE @i<[email protected]
BEGIN
select @j= cast(@i as varchar)
SELECT @SQL= @SQL+'X'[email protected] +' NVARCHAR(500) , '
SET @i = @i + 1
END
select @len=len(@SQL)
select @SQL = substring(@SQL,0,@len-1)
SELECT @SQL= @SQL+ ')'
exec (@SQL)
END