【发布时间】:2017-08-25 03:52:05
【问题描述】:
我在 SQL Server 中有一个表值函数 (TVF),如下所示:
CREATE FUNCTION TVF_xyz(@AuditKey INT)
RETURNS TABLE
AS
RETURN
SELECT *
FROM xyz
WHERE AUDIT_KEY = @AuditKey
GO
现在,我在xyz 表中添加了一个新列。
当我使用TVF_xyz 查询时,它没有显示新列(显示除新添加的所有其他列)。
查询:
SELECT TOP 10 *
FROM TVF_xyz (1543)
我想知道,如何刷新 TVF 以显示新列。
PS:Select * 在 TVF 中用于获取所有列。
【问题讨论】:
-
嗨,masa rhian,我如何刷新视图? 'xyz' 是一个表,当我直接查询此表时,我可以看到填充了新字段。
-
嗯,有 930 个字段,显式编写它们是一场噩梦。此外,还有几个表,我需要为其添加一列。我想知道,为什么它没有显示一个新列?我想,TVF 每次调用都会执行函数。
标签: sql-server database-metadata