2012-07-30 87 views
1

当创建Informix中的存储过程,即使相关的表不存在,不会引发错误..Informix的存储过程

我想报告级别是相当高的,所以我能怎样改变?

回答

1

这就是Informix设计的工作方式。

如果在运行该过程时该表仍然不存在,那么您将得到或多或少适当的运行时错误。但是,仅仅在创建过程时不存在表的事实是非常故意不被视为错误;该表可能会在使用该过程时创建。

没有设置,我知道要改变这种行为。

+0

hey..thx for reply..but同样的过程在dev和prod envirornments中创建时行为不同..在开发时没有错误抛出,但在prod上抛出错误..(错误是591 ..一列的默认状态)..任何想法abt这?也当我做“table_name的信息列”为一个不存在的表,在开发我得到空白column_type ...作为一个没有任何错误,但在prod上的回应我得到正确的错误信息说,table_name不存在 – 2012-07-30 23:08:57

+0

看起来像slike在创建过程时,11_70以上会对表名进行一些验证。 – 2012-07-31 16:02:09

+0

我不相信任何表名验证是可能的。在Informix中,在过程中删除和创建临时表是非常常见的。这是完全有效的。虽然数据库解析过程并遇到未知的表名称,但它不能引发异常,因为表格可能在几行之前创建。表创建块可以放置在条件块中,或者甚至放置在不可能进行静态分析的循环内。 – robsosno 2012-08-08 19:09:01