从oracle表

时间:2015-11-09 12:16:57

标签: java oracle

我正在将数据从excel插入到oracle表中,我想以相同的顺序检索记录。以下是我的代码。谁能帮忙?提前谢谢。

        ResultSetMetaData rm = rs.getMetaData();
        int columnCount = rm.getColumnCount();
        String colunmName  = rm.getColumnName(columnCount);

        if (rs != null && rs.first()) {
            do {
                bw.write(rs.getString((rm.getColumnName(columnCount))));
                bw.write("|");
                bw.newLine();

            } while (rs.next());
        }

1 个答案:

答案 0 :(得分:0)

要按插入顺序检索行,您需要定义排序。与其他语言中的数组或文件不同,SQL表代表无序集。因此,没有订购。

那么,你怎么能做你想要的呢?好吧,您可以在表格中包含标识/序列/自动增量列。在将行插入表中时,此列会递增,并应保留原始顺序。

在Oracle 12c中,这将是一个如下定义的列:

tableId number generated always as identity,
 . . . .

在早期版本的Oracle中,您可以使用序列和触发器执行相同的操作。

Oracle使这个功能易于实现有点晚。大多数其他数据库都支持许多类型的列。