SQL 在插入期间覆盖存储过程中的列值
SQL overwrite column value in stored procedure during insert
我想默认一个列值,不管从前端传递的值是什么。我使用存储过程来管理插入和更新。
我尝试过使用替换但失败了。
alter procedure project
(
@PROJECTNAME NVARCHAR(150),
@ProjectSid INT,
)
INSERT into sa.project (Projectname, sid)
values (
@PROJECTNAME = Replace(@PROJECTNAME,@PROJECTNAME,'Default'),
@ProjectSid = Replace(@ProjectSid,@ProjectSid,100)
)
我在尝试执行时遇到此错误
Incorrect syntax near '='.
我做错了什么?我在 SQL 服务器中执行上述操作。我不想将模式更改为具有默认值,因为这种情况特定于一个模块。
我已经解决了这个问题,方法是创建一个模式标志来区分来自不同模块的请求,然后我将默认值分配给我想要更改的模块。
我想默认一个列值,不管从前端传递的值是什么。我使用存储过程来管理插入和更新。
我尝试过使用替换但失败了。
alter procedure project
(
@PROJECTNAME NVARCHAR(150),
@ProjectSid INT,
)
INSERT into sa.project (Projectname, sid)
values (
@PROJECTNAME = Replace(@PROJECTNAME,@PROJECTNAME,'Default'),
@ProjectSid = Replace(@ProjectSid,@ProjectSid,100)
)
我在尝试执行时遇到此错误
Incorrect syntax near '='.
我做错了什么?我在 SQL 服务器中执行上述操作。我不想将模式更改为具有默认值,因为这种情况特定于一个模块。
我已经解决了这个问题,方法是创建一个模式标志来区分来自不同模块的请求,然后我将默认值分配给我想要更改的模块。