【发布时间】:2016-07-06 18:32:22
【问题描述】:
在我的 WPF 应用程序中,使用 Oracle 数据库和 C#,我有这段代码来填充数据网格,但它抛出“System.IndexOutOfRangeException”,并且“找不到表 0”。
如果我从 SQL 中删除 AS Date,则不会引发异常,但数据网格在应用程序中将列名称显示为 to_char(date_, 'dd/mm/yyyy')
db.SetSql("select sn, activity, attendees, to_char(date_, 'dd/mm/yyyy') AS Date from cpr");
DataSet result = db.RetrieveRecords();
datagrid1.ItemsSource = new DataView(result.Tables[0]);
【问题讨论】:
-
尝试用双引号将“日期”括在“作为日期”中
-
@VasylMoskalov 仍然抛出相同的异常,并且只用单引号括起来,因为它已经在字符串中
-
RetrieveRecords的实现是什么?
-
我认为您的查询不正确...您是否尝试直接在 SQL 中运行查询以查看它是否有效...查询错误...它以异常结束... RetrieveRecord 方法吞下异常并返回空数据集....您正在尝试访问导致异常的空数据集中的项目
-
@Viru,查询
select sn, activity, attendees, to_char(date_, 'dd/mm/yyyy) from cpr在 sqlplus 中有效,但不适用于AS Date
标签: c# wpf oracle exception datagrid