在SQL函数中插入查询

Rob*_*ave 3 sql sql-server-2008

我可以在SQL Server 2008中的函数内写一个插入查询.如果我试过,我得到一个错误,在函数内无效使用副作用操作符'INSERT'.请帮帮我.但我希望它是一个函数,而不是存储过程

Create function EFT_DL_FUNC_AUDTI_BATCH_START (@i_db_name varchar(20))
returns int as
begin
    insert into table_name(db_name) values (@i_db_name)
    return 0
end
Run Code Online (Sandbox Code Playgroud)

Han*_*ing 14

这里引用:

用户定义的函数不能用于修改基表信息.DML语句INSERT,UPDATE和DELETE不能在基表上使用.

所以你不能在函数中执行INSERT.

您可能想要解释为什么不想使用过程.