我运行此查询以使用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.


有人知道为什么吗?

谢谢你的帮助。

最佳答案

这是由于VS使用Windows样式的换行符(CR + LF),但是Oracle仅接受Unix样式的换行符(仅LF)。

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

09-30 23:26