【问题标题】:HSQLDB optional IN parameter or default parameter value of stored procedureHSQLDB 可选 IN 参数或存储过程的默认参数值
【发布时间】:2014-05-13 12:17:59
【问题描述】:

如何为存储过程IN参数设置默认值或 如何在存储过程中将 IN 参数设置为可选HSQLDB 中?

我已经尝试了我在 SQL 中学到的所有解决方案 我已经通过 HSQLDB 参考红了 不幸的是我还没有找到答案。

你有这方面的经验吗?

提前感谢您的回答!

K.

【问题讨论】:

    标签: stored-procedures hsqldb default-value optional-values


    【解决方案1】:

    您不能为 IN 参数设置默认值。这是某些产品的非标准功能。

    有一些方法可以增加一些灵活性:

    1. 在过程中检查参数是否为NULL,如果是,使用默认值
    2. 定义两个或三个版本的过程。参数较少的版本调用参数数量最多的版本。完整版检查 NULL 并使用默认值。

    【讨论】:

    • 您好 fredt,感谢您的快速回答! 1.,使用此解决方案,您不能使用不同数量的参数调用存储过程 - 如果您调用的存储过程的参数数量少于/多于您定义的数量,则会导致 SQL 失败 2.,您不能创建超过一个具有相同名称 K 的 SQL 对象。
    • 可以定义多个同名存储过程,只要参数个数不同。
    • 地球上没有 SQL 支持这一点。 “SQL 调用的例程是模式对象。命名和引用遵循所有模式对象通用的约定。” hsqldb.org/doc/guide/sqlroutines-chapt.htmlSQL 的同一个schema 中不能存在两个同名的SQL 对象。
    • 另见本节:hsqldb.org/doc/guide/…
    猜你喜欢
    • 2012-08-06
    • 2015-02-18
    • 1970-01-01
    • 2010-11-07
    • 2018-05-09
    • 2016-11-04
    • 2016-08-31
    • 2010-11-02
    • 2011-11-02
    相关资源
    最近更新 更多