无法通过perl脚本从oracle DB获取整个字符串

时间:2017-01-27 13:06:17

标签: oracle perl

在我的perl脚本中,我从oracle DB.column:SQL_STATUS_INFO获取数据类型为LONG的记录。

$sql_statement = "select SQL_STATEMENT";
$sql_statement .= " from SQL_STATUS_INFO";

my $sql_return = SQL_Exec($sql_statement);
my $DbRtn_DB = SQL_Fetch();

foreach my $fromdb (@{$DbRtn_DB}) {
    printf "SQL_STATEMENT  :@{$fromdb}[0]\n";
}

SQL_ExecSQL_Fetch来自perl模块,用于执行语句和获取结果。

在表格SQL_STATUS_INFO中,我在SQL_STATEMENT列中有以下数据。

CREATE TABLE "ECLIPSFILE_4G_DUMMY_TRNX" (ENBID VARCHAR2(30 CHAR),MCC NUMBER(38),MNC NUMBER,MNCLENGTH NUMBER,CELL_IDNUMBER(38),EARFCNDL NUMBER,PHYSICALID)

通过上面的脚本获取它时,我无法将整个语句转换为$DbRtn_DB

当我在脚本上面运行时,我得到的输出是:

CREATE TABLEECLIPSFILE_4G_DUMMY_TRNX (ENBID VARCHAR2(30 CHAR),MCC NUMBER(38),MNC

所以,我无法得到整个陈述。

但我可以将大文本插入db。我在SQL_DEVELOPER中尝试了上面的SQL语句,它在整个字符串中输出但不是通过perl脚本。

如何将整个字符串放入perl变量中。

1 个答案:

答案 0 :(得分:0)

直接使用DBI时是否有相同的错误? 在任何情况下,如果没有看到SQL_ExecSQL_Fetch的代码,就很难调试您的问题。 你引用的结果特别是80个字符长,这可能不是巧合。