Schema.ini の使用
Schema.ini ファイルでは、テーブルとしてモデル化したいテキストファイルの形式を指定できます。また、テーブルのカラムも定義できます。 Schema.ini はURI で指定されたフォルダ内に配置する必要があります。あるいは、IncludeSubdirectories が設定されている場合は、Schema.ini を各サブフォルダ内に定義できます。
Schema.ini を必要な場合にのみ定義できるようにするには、IncludeFiles およびExtendedProperties も使用できます。
ExtendedProperties はMicrosoft Jet OLE DB 4.0 と互換性があります。すべてのテキストファイルの形式はExtendedProperties で設定が可能です。Schema.ini は特定のファイルに対してExtendedProperties をオーバーライドします。
Schema.ini で指定されたファイルは、IncludeFiles で追加されたファイルに加えてテーブルとしてレポートされます。本製品 は、テーブルのレポートにSchema.ini の定義を使用します。定義がない場合はファイル名を使用します。
Schema.ini でテーブルを定義
Schema.ini のセクションは、角かっこで囲まれたファイル名で始まる必要があります。次に例を示します。
[Jerrie's travel expense.txt]
ファイル形式を指定
ファイル名のエントリを追加したら、Format プロパティをファイルの形式に設定できます。有効な値は次のとおりです。
- CSVDelimited
- TabDelimited
- Delimited(custom character)
Format=Delimited(,)Note:デフォルトでは、.txt ファイルはヘッダー付きのCSV ファイルとして処理されます。
カラムを定義
カラムの定義には、テキストファイルのフィールドに基づく2つの方法があります。
- ファイルの一行目、ヘッダー行でカラム名を定義します。接続すると本製品 がデータ型を決定します。
- カラム番号、名前、データ型、および幅をSchema.ini で定義します。この方法で定義されたカラムは、最初にヘッダー行から受け取ったカラムをオーバーライドします。Schema.ini のファイルセクションで"ColNameHeader=False" に設定することで、ファイルのヘッダー行を無視することもできます。
Schema.ini でカラムを定義するには、次のフォーマットを使用します。
Coln=ColumnName DataType [Width Width]
次に例を示します。
Col2=A Text Width 100Note:フォーマットが決まった長さに設定されている場合は、各カラム幅を設定することは必須です。
Schema.ini の例
次にSchema.ini の例を示します。[Jerrie's travel expense.csv] ColNameHeader=True Format=Delimited(,) Col1=Date Text Col2=A Text Col3=B Text Col4=C Text Col5=Total Text Col6=Date Text Col7=D Text Col8=E Text Col9=F Text Col10=G Text Col11=rate numeric [invoices.csv] ColNameHeader=True Format=Delimited(,) Col1=id numeric Col2=invoicedate date Col3=total numeric
サポートされるデータ型
データ型は次のいずれかになります。
- binary
- byte
- boolean
- date
- time
- datetime
- decimal
- double
- tinyint
- smallint
- integer
- bigint
- float
- string
- text
- longtext
- char
- varchar
- nvarchar