CREATE TABLE-Anweisung
Verwenden Sie die CREATE TABLE-Anweisung, um eine Tabelle in einer Datenbankdatei zu erstellen. Das Format der CREATE TABLE-Anweisung ist:
CREATE TABLE tabellenname ( tabellenelementliste [, tabellenelementliste...] )
In der Anweisung geben Sie Name und Datentyp jeder Spalte an.
-
tabellennameist der Name der Tabelle.tabellennamehat ein Limit von 100 Zeichen. Eine Tabelle mit dem gleichen Namen darf nicht bereits definiert sein. Der Tabellenname muss mit einem Zeichen aus dem Alphabet beginnen. Wenn der Tabellenname mit etwas anderem als einem Zeichen aus dem Alphabet beginnt oder einen Punkt enthält, schließen Sie ihn in Anführungszeichen ein (Quoted Identifier). -
Das Format für
tabellenelementlisteist:Kopierenfeldname feldtyp [[wiederholungen]]
[DEFAULT expr] [UNIQUE | NOT NULL | PRIMARY KEY | GLOBAL]
[FOREIGN KEY REFERENCES tabellenname(spaltenname)]
[EXTERNAL relativer_pfad_string [SECURE | OPEN berechn_pfad_string] [FEWER_FOLDERS]] -
feldnameist der Name des Felds. Feldnamen müssen eindeutig sein. Feldnamen beginnen mit einem Zeichen aus dem Alphabet. Wenn der Feldname mit einem anderen Zeichen beginnt oder einen Punkt enthält, umschließen Sie ihn mit Anführungszeichen (Quoted Identifier).Beispiel
Die
CREATE TABLE-Anweisung für das Feld namens _NACHNAMElautet:KopierenCREATE TABLE "_ANGESTELLTER" (ID INT PRIMARY KEY, "_VORNAME" VARCHAR(20), "_NACHNAME" VARCHAR(20)) -
Geben Sie für die
CREATE TABLE-Anweisungwiederholungeneine Feldwiederholung in Form einer Zahl zwischen 1 und 32000 in Klammern nach dem Feldtyp an.Beispiel
KopierenANGESTELLTER_ID INT[4]
NACHNAME VARCHAR(20)[4] -
feldtypkann einer der folgenden Optionen sein:NUMERIC,DECIMAL,INT,DATE,TIME,TIMESTAMP,VARCHAR,CHARACTER VARYING,BLOB,VARBINARY,LONGVARBINARYoderBINARY VARYING. FürNUMERICundDECIMALkönnen Sie Genauigkeit und Skala angeben. Beispiel:DECIMAL(10,0). FürTIMEundTIMESTAMPkönnen Sie die Genauigkeit angeben. Beispiel:TIMESTAMP(6). FürVARCHARundCHARACTER VARYINGkönnen Sie die Länge der Zeichenfolge angeben.Beispiel
KopierenVARCHAR(255) -
Über das Schlüsselwort
DEFAULTkönnen Sie einen Standardwert für eine Spalte festlegen. Fürexprkönnen Sie einen konstanten Wert oder einen Ausdruck verwenden. Zulässige Ausdrücke sindUSER,USERNAME,CURRENT_USER,CURRENT_DATE,CURDATE,CURRENT_TIME,CURTIME,CURRENT_TIMESTAMP,CURTIMESTAMPundNULL. -
Die Definition einer Spalte als
UNIQUEwählt automatisch die Überprüfungsoption Eindeutig für das entsprechende Feld in der FileMaker Pro-Datenbankdatei aus. -
Die Definition einer Spalte als
NOT NULLwählt automatisch die Überprüfungsoption Nicht leer für das entsprechende Feld in der FileMaker Pro-Datenbankdatei aus. Das Feld wird als Wert erforderlich im Register Felder des Dialogfelds „Datenbank verwalten“ in FileMaker Pro markiert. -
Um eine Spalte als Containerfeld zu definieren, verwenden Sie
BLOB,VARBINARYoderBINARY VARYINGfürfeldtyp. -
Um eine Spalte als Containerfeld zu definieren, das Daten extern speichert, verwenden Sie das Schlüsselwort
EXTERNAL.relativer_pfad_stringdefiniert den Ordner, in dem Daten extern, relativ zum Speicherort der FileMaker Pro-Datenbank gespeichert werden. Dieser Pfad muss als Basisverzeichnis im FileMaker Pro-Dialogfeld „Container verwalten“ angegeben werden. Sie müssen entwederSECUREfür einen sicheren Speicher oderOPENfür einen offenen Speicher angeben. Wenn Sie einen offenen Speicher verwenden, ist derberechn_pfad_stringder Ordner in dem Ordnerrelativer_pfad_string, in dem Containerobjekte gespeichert werden sollen. Der Pfad muss Schrägstriche (/) im Ordnernamen verwenden. Die Angabe vonFEWER_FOLDERSentspricht der Aktivierung von Mit weniger Ordnern für die Datenquelle. -
Um eine Fremdschlüssel-Beziehung zu definieren, verwenden Sie die Klausel
FOREIGN KEY REFERENCESnach dem Feldtyp. Die Fremdschlüssel-Spalte muss vom TypINT,NUMERIC,DECIMALoderVARCHARsein und mit dem Datentyp der referenzierten Spalte übereinstimmen. Die referenzierte Tabelle muss bereits vorhanden sein, und die referenzierte Spalte muss in dieser Tabelle vorhanden sein.Mit der Klausel
FOREIGN KEY REFERENCESerstellt die AnweisungCREATE TABLEoderALTER TABLEdie Beziehung im FileMaker-Beziehungsdiagramm. Diese Anweisungen schlagen fehl und geben den Fehler 8201 zurück, wenn die Beziehung eine zirkuläre Referenz (Durchwechseln) im Beziehungsdiagramm erzeugen würde.Beispiel
KopierenCREATE TABLE Bestellungen (
BestellID INT PRIMARY KEY,
KundenID INT FOREIGN KEY REFERENCES Kunden(KundenID),
BestellDatum DATE
)
Beispiele
|
Verwenden von |
Beispiel-SQL |
|
Textspalte |
Kopieren
|
|
Textspalte, |
Kopieren
|
|
Zahlenspalte |
Kopieren
|
|
Datumsspalte |
Kopieren
|
|
Zeitspalte |
Kopieren
|
|
Zeitstempelspalte |
Kopieren
|
|
Spalte für Containerfeld |
Kopieren
|
|
Spalte für extern gespeichertes Containerfeld |
Kopieren
|
|
Tabelle mit Fremdschlüssel-Beziehungen |
Kopieren
|