2017-01-27 9 views
-2

私のperlスクリプトで、データ型がLONGのoracle DB.column:SQL_STATUS_INFOからレコードを取得しています。perlスクリプトを通してoracle DBから文字列全体を取得することができません

$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変数に入れることができますか?

+0

適切な情報を追加してください。あなたのSQLクエリも間違っています。 –

答えて

0

DBIを直接使用すると、同じエラーが発生しますか? いずれの場合も、SQL_ExecSQL_Fetchのコードは表示されず、問題をデバッグすることは困難です。 あなたが引用した結果は、特に80文字であり、これは偶然ではないかもしれません。

関連する問題