SAS/ACCESSで外部データベースのテーブルにある1025バイト以上の文字型データを取り込む方法

[OS] ALL
[リリース] ALL
[キーワード] ACCESS, SQL, external database, character length, DBMAX_TEXT

[質問]

SAS/ACCESS を利用してデータベースのテーブルを読み込む際に、文字型データが1024バイトで切り捨てられてしまいます。
切り捨てずにすべてを読み込むにはどうすればよいでしょうか。

[回答]

SAS/ACCESSのLIBNAME エンジンおよびSQLパススルー機能を利用してデータベースのテーブルから文字型データを読み込む際の、文字長のデフォルト値は1024バイトです。
この値を変更するには、DBMAX_TEXT オプションを利用します。指定可能な値の範囲は1から32767までです。


PROC SQL  ;
     CONNECT TO DB2 
       (USER=***** USING=*****
          DB=***** SCHEMA=*****
            DBMAX_TEXT=32767);

    (中略)

QUIT;

なお、DBMAX_TEXTの設定を変更すると、文字型データはすべて変更後の長さで読み込まれます。