存储过程或函数中使用的变量的 SQL Server 同步大小



我们确实创建了变量来存储列数据,如下所示

DECLARE @Name VARCHAR(300)
SELECT  @Name = Name,
@Age = Age
FROM [Employee]

在这里,我们给出大小VARCHAR(300)假设表中定义的长度300

这发生在商店程序中。

如果表中的大小增加怎么办?(例如 500(。 有没有一种简单的方法来跨存储过程更新大小?或者任何更好的创建变量的方法?

我相信你想要像 ORACLE%TYPE这样的东西:

Oracle %TYPE 属性在表定义更改时调整代码。%TYPE 属性提供变量或数据库列的数据类型。如果列的类型发生更改,则变量在运行时使用正确的类型。这提供了数据独立性并降低了维护成本。

Microsoft SQL Server 不支持,也没有等效的 Oracle %TYPE。

SQL Server 不支持此机制。可能的解决方案:

  • 声明长度超过 300 的变量
  • 使用用户定义的数据类型

相关内容

  • 没有找到相关文章

最新更新