我正在使用 [TestDB]* 名称在数据库中运行您的语句 *
USE [TestDB]GOCREATE TABLE [dbo].[users] ( [username] VARCHAr (40) NOT NULL, [password] VARCHAr (40) NOT NULL, [name] VARCHAr (40) NOT NULL, [surname] VARCHAr (40) NOT NULL, [email] VARCHAr (40) NOT NULL,PRIMARY KEY CLUSTERED ([username] ASC));GOINSERT INTO [dbo].[users] VALUES ('testu', 'testp', 'testname', 'testsur', 'testemail')接下来,我将尝试在表中插入另一行,如下所示
INSERT INTO [dbo].[users] VALUES ('testuwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww', 'testp', 'testname', 'testsur', 'testemail')这是一个错误,指示[UserName]列值的长度大于创建DDL时指定的长度。
解决方案
A)将[UserName]的长度限制在40个字符以内(在此示例中)。
B)或通过使用 ALTER 语句来增加[UserName]列的长度。
例如
ALTER TABLE [dbo].[users]ALTER COLUMN [username] VARCHAr (100) NOT NULL
注意〜这里[用户名]列仅作为指出错误的参考。其他列也可能发生这种情况。因此,只需验证发生在哪一列。



