我在 SQL Server 2008 上有这个查询
CREATE TABLE MediaLibrary
(
MediaId bigint NOT NULL IDENTITY (1, 1),
MediaTypeId smallint NOT NULL,
ImageNameByUser nchar(100) NULL,
GeneratedName uniqueidentifier NOT NULL,
UploadedByUserId uniqueidentifier NOT NULL,
UploadedDate date NOT NULL,
ProfilePhoto bit NOT NULL,
PublicPhoto bit NOT NULL,
AppointmentId bigint NULL,
OriginalImage nchar(1000) NULL,
ThumbImage nchar(1000) NULL,
MediumImage nchar(1000) NULL,
LargeImage nchar(1000) NULL,
UrlThumb nchar(1000) NULL,
UrlMedium nchar(1000) NULL,
UrlLarge nchar(1000) NULL,
InactiveReasonId smallint NULL,
InactiveDate datetime NULL
) ON [PRIMARY]
GO
当我尝试创建表时出现此错误
创建或更改表“MediaLibrary”失败,因为最小行大小为 14273,包括 9 字节的内部开销。这超出了允许的最大表行大小 8060 字节。
我知道我达到了行大小的限制,但这不是一个大表,所以我想知道这是否不是一个好的设计?
当我改变了nchar(1000)
to varChar(1000)
桌子保存得很好。我担心的是,一旦数据实际保存到表中,我将再次达到行大小限制。