Monday, March 4, 2013

Microsoft OLE DB Provider for SQL Server : Cannot create a row of size 8100 which is greater than the allowable maximum of 8060. (80040E14)

Microsoft OLE DB Provider for SQL Server : Cannot create a row of size 8100 which is greater than the allowable maximum of 8060. (80040E14)

hatası SQL 2000 server'ın bir tablodaki satır kapasitesinin 8060 byte olmasından kaynaklanmaktadır. SQL Server üzerinde bulunan tabloların kolon uzunluklarını bulan sorgudan sonra gerekli düzenleme yapılabilir.

Sorgu:


SELECT OBJECT_NAME(syscolumns.[id]) AS [Table Name] ,

SUM(syscolumns.length) AS [Row Size]

FROM syscolumns

JOIN sysobjects ON syscolumns.[id] = sysobjects.[id]

WHERE sysobjects.xtype = 'U' and OBJECT_NAME(syscolumns.[id]) like '%999%'

GROUP BY OBJECT_NAME(syscolumns.[id])


Sonuç:
Table Name
Row Size
BKP_LG_999_MRPHEAD
10192
LG_999_MRPHEAD
10192
LG_999_WHLIST
10046
BKP_LG_999_WHLIST
10046
LG_999_CLCARD
7194
BKP_LG_999_CLCARD
7194
BKP_LG_999_TAXDECLLINE
4950
LG_999_TAXDECLLINE
4950
LG_999_DEFNFLDSCARDV
2974
BKP_LG_999_DEFNFLDSCARDV
2974
LG_999_09_DEFNFLDSTRANV
2974
LG_999_11_DEFNFLDSTRANV
2974
LG_999_12_DEFNFLDSTRANV
2974
LG_999_10_DEFNFLDSTRANV
2974
LG_999_13_DEFNFLDSTRANV
2974
BKP_LG_999_CAMPAIGN
2937
LG_999_CAMPAIGN
2937