ODBC 接続から取得した SQL データのデータ長は、Progress データベース フィールドの「Width」プロパティによって決まります。これには、必要なテーブルを選択し、メニュー バーの [オプション]、[フィールド幅の調整] を選択して、[進行状況データ ディクショナリ] からアクセスできます。CHAR フィールドでは、通常、「幅」プロパティは「フォーマット」幅の 2 倍に相当する値で定義されます。
例: フィールド FOO、タイプ CHAR、フォーマット "x(20)" のデフォルトの SQL 幅の値は 40 で、元のフォーマット サイズの 2 倍です。
ただし、プログレスがフィールドに格納されているデータの量を気にせず、「フォーマット」句が表示目的のみである限り、「x(20)」としてフォーマットされたCHARフィールドに20文字を超える長さのデータを書き込むことができます(もちろん、彼のデータ型サイズの制限内で)、Oracle のように、SQL 接続のデータ長をハード リミットで制限します。つまり、たとえば、N 長として定義された Oracle データベース フィールドに N + n 文字を書き込むことができない限り、フィールドがフォーマット " x(N)" であり、そこに保存されているデータは通常 2N を超えます。
Progress データベースにアクセスできない場合は、Progress データベースに保存されているデータの責任者に連絡し、データベース スキーマのフィールドのサイズを変更して、保存されているデータの全量に一致するように依頼してください。データベースにデータを保存しているプログラムは、データベースのフィールド サイズと一致しない可能性があります。そうしないと、「Width」文字を超えるフィールドを持つテーブルからデータを取得できなくなります。