webForumDet fria alternativet

create table

2 svar · 265 visningar · startad av doggelito

doggelitoMedlem sedan juni 20003 076 inlägg
#1

Vad betyder detta, vad har jag gjort för fel?

Warning: The table 'Articletbl' has been created but its maximum row size
 (16042) exceeds the maximum number of bytes per row (8060). 
INSERT or UPDATE of a row in this table will fail if the resulting 
row length exceeds 8060 bytes.

CREATE TABLE [User].[Articletbl] (
	[Articleid] [int] IDENTITY (1, 1) NOT NULL ,
	[Title] [nvarchar] (4000) COLLATE Finnish_Swedish_CI_AS NULL ,
	[Notes] [nvarchar] (4000) COLLATE Finnish_Swedish_CI_AS NULL ,
	[Appear] [int] NOT NULL ,
	[Active] [bit] NOT NULL ,
	[Regdate] [datetime] NULL 
) ON [PRIMARY]
GO
LarsGMedlem sedan dec. 200012 464 inlägg
#2

Den maximala längden för en post i en tabell i SQL server är 8060 bytes. (Om man bortser från text/image som bara delvis lagras i posten.)

Det går att skapa tabeller med större postlängd än 8060 om de innehåller kolumner med variabel längd (varchar), men det går då inte att lagra väden där alla kolumner är helt utfyllda.

För att slippa meddelandet så kan du ju minska längden på någon kolumn.

doggelitoMedlem sedan juni 20003 076 inlägg
#3

Aha, det är alltså för att jag har både Title och Notes som nvarchar 4000?

127 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)