我正在使用Visual Studio项目与自定义生成脚本/批处理文件(ala make,ant等).
从命令行运行构建时,我们在各种输出行上放置了彩色突出显示.
但是,当通过Visual Studio(在我的情况下为2005)构建时,输出窗口不再显示颜色.
这可能吗?如果需要,我很乐意将特定代码放入构建脚本中.
假设我BOOLEAN
在Oracle表单中的PL/SQL块中有一个变量:
DECLARE
is_viewable BOOLEAN;
BEGIN
is_viewable := ...;
IF NOT is_viewable THEN
raise_my_error(); // pseudo-code
END IF;
END;
Run Code Online (Sandbox Code Playgroud)
在使用调试器多次单步执行此代码后,我确定raise_my_error()
永远不会被调用.澄清:
raise_my_error()
如果没有被调用is_viewable = TRUE
raise_my_error()
如果没有被调用is_viewable = FALSE
初步测试表明,此行为仅限于在Oracle Forms中运行的PL/SQL代码,而不是直接在数据库中运行的PL/SQL代码(尽管我可能错了).
我可以通过明确地比较is_viewable
来解决这个问题FALSE
:
IF is_viewable = FALSE THEN
raise_my_error();
END IF;
Run Code Online (Sandbox Code Playgroud)
我仍然很好奇为什么NOT is_viewable
永远不会评估TRUE
.
更新:我的调试器似乎没有显示正确的值,并且此问题不再有效.抱歉这个混乱.
在Oracle数据库10g中,是否可以在包或过程之外创建关联数组类型?我希望能够这样做,以便我可以在另一种类型中引用这种关联数组类型.例如:
create type my_type_map is table of varchar2(10) index by varchar2(10);
create type my_other_type as object (
id number(15),
member procedure initialize(p_my_type_map my_type_map)
) not instantiable not final;
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
SQL> create type my_type_map is table of varchar2(20) index by varchar2(10);
2 /
Warning: Type created with compilation errors.
SQL> show errors;
Errors for TYPE MY_TYPE_MAP:
LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0 PL/SQL: Compilation unit analysis terminated
1/21 PLS-00355: use of pl/sql table not allowed in this context
SQL>
Run Code Online (Sandbox Code Playgroud)
似乎Oracle认为:
index by …
Run Code Online (Sandbox Code Playgroud) 是否可以将foo从float转换为long(反之亦然)?
auto foo = float(1234567891234.1234);
cout << "foo: " << foo << endl;
foo = long(1234567891234.1234);
cout << "foo: " << foo << endl;
Run Code Online (Sandbox Code Playgroud)
输出总是:
foo: 1.23457e+12 foo: 1.23457e+12