【发布时间】:2019-06-04 09:41:43
【问题描述】:
我有一个名为 [user] 的表,我使用简单的 alter table 语句向表中添加了一列:
ALTER TABLE [user]
ADD Company nvarchar(50) null
当我尝试像下面这样进行简单更新时
UPDATE dbo.[User]
SET username = 'al'
WHERE UserId = 17
我收到一个错误
消息 213,级别 16,状态 1,过程 User_INSERT_UPDATE_DELETE,行 6 [批处理开始第26行]
列名或提供的值数与表不匹配 定义。
如果我删除该列,一切正常。
提前谢谢你!
【问题讨论】:
-
看来,错误出现在
INSERT INTO dbo.[User]块中的其他位置。您需要在INSERT INTO dbo.[User]中手动提及列名来解决问题 -
您使用的是哪个 dbms?是否涉及任何触发器?
-
用户表上是否有触发器?您需要先检查此过程 User_INSERT_UPDATE_DELETE 。 6号线有什么?或者,如果可以,您可以编辑您的问题并粘贴该过程的代码。
标签: sql-server tsql ddl