使用pl / sql查询和.net的奇怪行为

时间:2009-10-21 15:44:21

标签: c# .net oracle oracleclient ora-06550

我运行此查询以使用OracleCommand读取带有输出参数的记录计数:

var query = "declare MyCount number; begin SELECT COUNT(*) INTO :MyCount FROM T_ISSUE; end;";

这个工作正常。

但是,如果我将查询分成两行,如下所示:

var query = @"declare MyCount number; 
              begin SELECT COUNT(*) INTO :MyCount FROM T_ISSUE; end;";

我得到了以下异常:

System.Data.OracleClient.OracleException: ORA-06550: line 1, column 25:
PLS-00103: Encountered the symbol "" when expecting one of the following:

   begin function package pragma procedure subtype type use
   <an identifier> <a double-quoted delimited-identifier> form
   current cursor
The symbol "" was ignored.

有人知道为什么吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:4)

这是因为VS使用了Windows风格的换行符(CR + LF),但Oracle只接受Unix风格(仅限LF)。

至少在VB6中就是这种情况。