Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Entity Framework - Taille de ligne supérieure à la taille de ligne maximale autorisée de 8060

La seule façon dont je peux voir que vous obtenez cette erreur avec cette définition de table est si vous avez déjà eu une grande colonne de largeur fixe qui a depuis été supprimée.

CREATE TABLE [dbo].[Attachments] (
    [Id] int IDENTITY(1,1) NOT NULL,
    [FileName] nvarchar(255) NOT NULL,
    [Attachment] varbinary(max) NOT NULL,
    Filler char(8000),
    Filler2 char(49)
);

ALTER TABLE  [dbo].[Attachments] DROP COLUMN Filler,Filler2

INSERT INTO [dbo].[Attachments]
([FileName],[Attachment])
VALUES
('Foo',0x010203)

Qui donne

Si tel est le cas, essayez de reconstruire la table

ALTER TABLE [dbo].[Attachments] REBUILD