Datei „Schema.ini“ (Textdateitreiber)

Wenn der Texttreiber verwendet wird, wird das Format der Textdatei mithilfe einer Schemainformationsdatei bestimmt. Die Schemainformationsdatei wird immer Schema.ini benannt und immer im selben Verzeichnis wie die Textdatenquelle gespeichert. Die Schemainformationsdatei stellt dem IISAM Informationen über das allgemeine Format der Datei, den Spaltennamen und Datentypinformationen sowie mehrere andere Datenmerkmale bereit. Für den Zugriff auf Daten mit fester Länge ist immer eine Schema.ini-Datei erforderlich. Sie sollten eine Schema.ini-Datei verwenden, wenn Ihre Texttabelle DateTime-, Currency- oder Decimal-Daten enthält oder wenn Sie mehr Kontrolle über die Verarbeitung der Daten in der Tabelle haben möchten.

Hinweis

Der Text-ISAM ruft die anfänglichen Werte aus der Registrierung ab, nicht von Schema.ini. Das gleiche Standarddateiformat gilt für alle neuen Textdatentabellen. Alle Dateien, die von der CREATE TABLE-Anweisung erstellt wurden, erben dieselben Standardwerte, die durch Auswählen von Dateiformatwerten im Dialogfeld Textformat definieren festgelegt werden, wobei <der Standardwert> in der Liste Tabellen ausgewählt ist. Wenn sich die Werte in der Registrierung von den Werten in Schema.ini unterscheiden, werden die Werte in der Registrierung durch die Werte aus Schema.ini überschrieben.

Grundlegendes zu Schema.ini Dateien

Schema.ini Dateien bieten Schemainformationen zu den Datensätzen in einer Textdatei. Jeder Schema.ini-Eintrag gibt eines von fünf Merkmalen der Tabelle an:

  • Der Name der Textdatei

  • Das Dateiformat

  • Die Feldnamen, Breiten und Typen

  • Der Zeichensatz

  • Spezielle Datentypkonvertierungen

In den folgenden Abschnitten werden diese Merkmale erläutert.

Angeben des Dateinamens

Der erste Eintrag in Schema.ini ist immer der Name der In eckigen Klammern eingeschlossenen Textquelldatei. Das folgende Beispiel veranschaulicht den Eintrag für die Datei Sample.txt:

[Sample.txt]  

Angeben des Dateiformats

Die Option Format in Schema.ini gibt das Format der Textdatei an. Text IISAM kann das Format automatisch aus den meisten Durchzeichen getrennten Dateien lesen. Sie können jedes einzelne Zeichen als Trennzeichen in der Datei verwenden, mit Ausnahme des doppelten Anführungszeichens ("). Die Einstellung Format in Schema.ini setzt die Einstellung in der Windows-Registrierung datei für Datei außer Kraft. In der folgenden Tabelle sind die gültigen Werte für die Option Format aufgeführt.

Formatbezeichner Tabellenformat Schema.ini Format-Anweisung
Tabulatortrennzeichen Felder in der Datei sind durch Registerkarten getrennt. Format=TabDelimited
CSV-Trennzeichen Felder in der Datei werden durch Kommas (durch Trennzeichen getrennte Werte) getrennt. Format=CSVDelimited
Benutzerdefinierte Trennzeichen Felder in der Datei werden durch ein beliebiges Zeichen getrennt, das Sie in das Dialogfeld eingeben möchten. Alle mit Ausnahme der doppelten Anführungszeichen (") sind zulässig, einschließlich leer. Format=Trennzeichen(benutzerdefiniertes Zeichen)

Oder

Ohne Angegebenes Trennzeichen:

Format=Trennzeichen( )
Feste Länge Felder in der Datei haben eine feste Länge. Format=FixedLength

Angeben der Felder

Sie können Feldnamen in einer Textdatei mit Zeichentrennzeichen auf zwei Arten angeben:

  • Fügen Sie die Feldnamen in die erste Zeile der Tabelle ein, und legen Sie ColNameHeader auf True fest.

  • Geben Sie jede Spalte nach Zahl an, und legen Sie den Spaltennamen und den Datentyp fest.

Sie müssen jede Spalte nach Zahl angeben und den Spaltennamen, den Datentyp und die Breite für Dateien mit fester Länge angeben.

Hinweis

Die Einstellung ColNameHeader in Schema.ini setzt die Einstellung FirstRowHasNames in der Windows-Registrierung datei für Datei außer Kraft.

Die Datentypen der Felder können ebenfalls bestimmt werden. Verwenden Sie die Option MaxScanRows , um anzugeben, wie viele Zeilen beim Bestimmen der Spaltentypen gescannt werden sollen. Wenn Sie MaxScanRows auf 0 festlegen, wird die gesamte Datei gescannt. Die Einstellung MaxScanRows in Schema.ini setzt die Einstellung in der Windows-Registrierung datei für Datei außer Kraft.

Der folgende Eintrag gibt an, dass Microsoft Jet die Daten in der ersten Zeile der Tabelle verwenden sollte, um Feldnamen zu bestimmen und die gesamte Datei zu untersuchen, um die verwendeten Datentypen zu ermitteln:

ColNameHeader=True  
MaxScanRows=0  

Der nächste Eintrag bestimmt Felder in einer Tabelle mithilfe der Option Spaltennummer (Coln), die für Dateien mit Zeichentrennzeichen optional ist und für Dateien mit fester Länge erforderlich ist. Das Beispiel zeigt die Schema.ini Einträge für zwei Felder, ein 10-stelliges Textfeld CustomerNumber und ein 30-stelliges CustomerName-Textfeld:

Col1=CustomerNumber Text Width 10  
Col2=CustomerName Text Width 30  

Die Syntax von Coln lautet:

  
n=ColumnName type [Width] [#]  

Hinweise

In der folgenden Tabelle werden die einzelnen Teile des Coln-Eintrags beschrieben.

Parameter BESCHREIBUNG
ColumnName Der Textname der Spalte. Wenn der Spaltenname eingebettete Leerzeichen enthält, müssen Sie ihn in doppelte Anführungszeichen einschließen.
type Datentypen sind wie folgt:

Microsoft Jet-Datentypen

bit

Byte

Short

Long

Währung

Single

Double

Datetime

Text

Memo

ODBC-Datentypen Char (identisch mit Text)

Float (identisch mit Double)

Ganze Zahl (identisch mit Short)

LongChar (identisch mit Memo)

Datumsformat
Width Der Literalzeichenfolgenwert Width. Gibt an, dass die folgende Zahl die Breite der Spalte angibt (optional für Dateien mit Zeichentrennzeichen; erforderlich für Dateien mit fester Länge).
# Der ganzzahlige Wert, der die Breite der Spalte angibt (erforderlich, wenn Breite angegeben ist).

Auswählen eines Zeichensatzes

Sie können aus zwei Zeichensätzen auswählen: ANSI und OEM. Die CharacterSet-Einstellung in Schema.ini setzt die Einstellung in der Windows-Registrierung datei für Datei außer Kraft. Das folgende Beispiel zeigt den eintrag Schema.ini, der den Zeichensatz auf ANSI festlegt:

CharacterSet=ANSI  

Angeben von Datentypformaten und Konvertierungen

Die Schema.ini Datei enthält mehrere Optionen, mit denen Sie angeben können, wie Daten konvertiert oder angezeigt werden. In der folgenden Tabelle sind alle diese Optionen aufgeführt.

Option BESCHREIBUNG
Datetimeformat Kann auf eine Formatzeichenfolge festgelegt werden, die Datums- und Uhrzeitangaben angibt. Sie sollten diesen Eintrag angeben, wenn alle Datums-/Uhrzeitfelder im Import/Export mit demselben Format behandelt werden. Alle Microsoft Jet-Formate mit Ausnahme von A.M. und P.M. werden unterstützt. Wenn keine Formatzeichenfolge vorhanden ist, werden die Windows-Systemsteuerung Kurzen Datumsbild- und Zeitoptionen verwendet.
DecimalSymbol Kann auf ein beliebiges einzelnes Zeichen festgelegt werden, das verwendet wird, um die ganze Zahl vom Bruchteil einer Zahl zu trennen.
NumberDigits Gibt die Anzahl der Dezimalstellen im Bruchteil einer Zahl an.
NumberLeadingZeros Gibt an, ob ein Dezimalwert kleiner als 1 und mehr als -1 führende Nullen enthalten soll; Dieser Wert kann entweder False (keine führenden Nullen) oder True sein.
CurrencySymbol Gibt das Währungssymbol an, das für Währungswerte in der Textdatei verwendet werden kann. Beispiele hierfür sind das Dollarzeichen ($) und Dm.
CurrencyPosFormat Kann auf einen der folgenden Werte festgelegt werden:

- Währungssymbolpräfix ohne Trennung ($1)
- Währungssymbolsuffix ohne Trennung (1$)
- Währungssymbolpräfix mit einer Zeichentrennung ($ 1)
- Währungssymbolsuffix mit einer Zeichentrennung (1 $)
CurrencyDigits Gibt die Anzahl der Ziffern an, die für den Bruchteil eines Währungsbetrags verwendet werden.
CurrencyNegFormat Folgenden Werte sind möglich:

- ($1)
- -$1
- $-1
- $1-
- (1$)
- -1$
- 1-$
- 1$-
- -1 $
- -$ 1
- 1 $-
- $ 1-
- $ -1
- 1- $
- ($ 1)
- (1 $)

In diesem Beispiel wird das Dollarzeichen angezeigt, aber Sie sollten es im eigentlichen Programm durch den entsprechenden CurrencySymbol-Wert ersetzen.
CurrencyThousandSymbol Gibt das einstellige Symbol an, das zum Trennen von Währungswerten in der Textdatei durch Tausende verwendet werden kann.
CurrencyDecimalSymbol Kann auf ein beliebiges einzelnes Zeichen festgelegt werden, das verwendet wird, um das Ganze vom Bruchteil eines Währungsbetrags zu trennen.

Hinweis

Wenn Sie einen Eintrag weglassen, wird der Standardwert in der Windows-Systemsteuerung verwendet.