我们可以在函数内部使用Truncate函数吗?

时间:2019-10-08 09:23:40

标签: sql-server tsql

我们可以在函数内部使用Truncate函数吗? 我想知道是否在函数中执行TRUNCATE TABLE查询会截断表吗?

1 个答案:

答案 0 :(得分:4)

TRUNCATE不是函数,而是DML操作。 SQL Server中的函数(就像在C#和许多其他语言中一样)后跟括号。例如GETDATE()ISNULL({NULLable Expression},{Return Expression if prior NULL})dbo.DelimitedSplit8k_LEAD({Delimited List},{Delimiter character})

不,您不能在函数内使用TRUNCATE。除了针对在函数本身中声明的表值变量之外,函数无法执行任何DML操作(然后您将使用多行函数,这往往表现不佳)。

如果需要执行DML操作,则需要一个存储过程。