データアクセスのファインチューニング
高度なデータモデリング設定
以下の接続文字列を使用して、connector が検出するテーブルや戻り値、その他のデータアクセスの側面を設定します。
スキーマ検出
- Orientation:スプレッドシートの方向と一致するテーブルをモデル化します。Horizontal またはVertical に設定します。
- DefineTables:標準のExcel の範囲形式 [Table Name]=[Sheet Name]![Range] を使用して、テーブルとしてアクセスする範囲を明示的に指定します。複数のテーブルをセミコロン区切りリストで指定します。
DefineTables="Table1=Sheet1!A1:N25,Table2=Sheet2!C3:M53"
connector は、シート内の名前付き範囲を自動的に検出し、それらをテーブルとしてレポートします。また、FROM 句で範囲を指定することもできます。SELECT * FROM Excel_Sheet#A5:F*
カラム検出
- Header:True の場合は、1行目からカラム名を検出します。そうでない場合は、疑似列名A、B、C などが使用されます。
- TypeDetectionScheme:connector がカラムのデータ型を検出する方法を決定します。
- RowScanDepth:row-scan タイプの検出スキームを使用する場合は、このプロパティをスキャンする行数に設定し、カラムのデータ型を決定します。
高度なExcel のデータ連携
数式
- AllowFormula:数式結果や数式を、挿入するかまたは更新するか。
- Recalculate:データが変更されたときに数式を再計算します。
- IgnoreCalcError:数式が計算されたときに発生したエラーを無視します。
- HasCrossSheetReferences:データが変更されたときに、すべてのワークシートで数式を再計算します。connector はクロスシート参照に従いますが、パフォーマンスコストがあります。
その他
- EmptyValueMode:空のセルを処理する方法を設定します。空のセルとは、空の文字列(例:="")を含むセルです。空のセルを、空の文字列またはnull 文字列として返すことができます(デフォルトでは空の文字列を返します)。
- NullValueMode:設定されていないセルの処理方法を設定します。設定されていないセルは、空のセルとは異なります。設定されていないセルには、null 文字列が含まれます。設定されていないセルを、空の文字列またはnull 文字列として返すことができます(デフォルトではNULL を返します)。
- BufferChanges:データの変更を接続が閉じるまでメモリ内に保持するかどうかを示します。