0

如何从备忘录字段中检索 java 中的数据,我正在使用进度数据库。但它给出了错误:

[DataDirect-Technologies][ODBC PROGRESS driver][PROGRESS]Column Doc_Desc in table PUB.GLDOCHDR has value exceeding its max length or precision.

写了这样的sql代码:

selectSQL="select Doc_Desc from PUB.GLDOCHDR where Doc_Desc like '%:%' and Doc_Desc like '%@%'";

像这样检索数据:

rs = stmt.executeQuery(selectSQL);
while( rs.next())
{
    BufferedReader br = new BufferedReader(new InputStreamReader(rs.getAsciiStream("Doc_Desc")));                   
    System.out.println(br.readLine());
}
4

1 回答 1

1

Progress (OpenEdge) 有两个“个性”——SQL 和 4GL。

4GL(或“ABL”)引擎是最常用的,它不关心领域有多宽。所有数据都是可变宽度。宽度只是用于显示格式的建议,程序员通常会忽略它。

这自然使 SQL 工具适合。

提供了一个工具来减轻您的痛苦——“dbtool”将扫描数据库并调整“sql-width”以反映它在数据中找到的实际最大宽度。这通常在大多数使用 SQL 的 Progress 商店中定期运行(通常是每周或每月)。

http://knowledgebase.progress.com/articles/Article/P24496

http://knowledgebase.progress.com/articles/Article/P159769

于 2014-01-12T19:20:25.647 回答