【问题标题】:Insert query in SQL Function在 SQL 函数中插入查询
【发布时间】:2011-02-23 07:50:06
【问题描述】:

我可以在 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

【问题讨论】:

  • 你能向我们展示你有什么并更详细地解释你想要做什么吗??
  • 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
  • 这实际上是一个在表格中插入一行的函数。但我得到了错误
  • clave:请不要将代码示例或 XML 或类似的东西放入 cmets - 真的很难阅读和理解。请通过编辑更新您的原始问题并提供更多信息 - 谢谢!

标签: sql sql-server-2008


【解决方案1】:

引用here:

不能使用用户定义函数 修改基表信息。这 DML 语句 INSERT、UPDATE 和 DELETE 不能用于基表。

因此您不能在函数中执行 INSERT。

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

【讨论】:

    猜你喜欢
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-26
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多