CREATE TABLE-sats

Använd en CREATE TABLE-sats om du vill skapa en tabell i en databasfil. CREATE TABLE-satsen har följande format:

Kopiera
CREATE TABLE tabellnamn ( tabellelementlista [, tabellelementlista...] )

I instruktionen anger du namnet och datatypen för varje kolumn.

  • tabellnamn är namnet på tabellen. tabellnamn har en begränsning på 100 tecken. Det får inte redan finnas en tabell med samma namn. Tabellnamnet måste börja med ett alfabetiskt tecken. Om tabellnamnet börjar med något annat än ett alfabetiskt tecken eller innehåller en punkt (.) ska du omge det med dubbla citattecken (citatomsluten identifierare).

  • Formatet för tabellelementlista är:

    Kopiera
    fältnamn fälttyp [[repetitioner]]
    [DEFAULT uttr] [UNIQUE | NOT NULL | PRIMARY KEY | GLOBAL
    [EXTERNAL relativ_sökväg [SECURE | OPEN beräknad_sökväg]]
  • fältnamn är namnet på fältet. Fältnamn måste vara unika. Fältnamn börjar med ett alfabetiskt tecken. Om fältnamnet börjar med något annat än ett alfabetiskt tecken eller innehåller en punkt (.) ska du omge det med dubbla citattecken (citatomsluten identifierare).

    Exempel

    CREATE TABLE-satsen för fältet som heter _EFTERNAMN är:

    Kopiera
    CREATE TABLE "_ANSTÄLLDA" (ID INT PRIMARY KEY, "_FÖRNAMN" VARCHAR(20), "_EFTERNAMN" VARCHAR(20))
  • För repetitioner i CREATE TABLE-satsen, anger du en fältrepetition genom att använda ett tal mellan 1 och 32000 i hakparenteser efter fälttypen.

    Exempel

    Kopiera
    ANSTÄLLNINGS_ID INT[4]
    EFTERNAMN VARCHAR(20)[4]
  • fälttyp kan vara ett av följande: NUMERIC, DECIMAL, INT, DATE, TIME, TIMESTAMP, VARCHAR, CHARACTER VARYING, BLOB, VARBINARY, LONGVARBINARY eller BINARY VARYING. Du kan ange noggrannheten och skalan för NUMERIC och DECIMAL. Till exempel: DECIMAL(10,0). Du kan ange noggrannheten för TIME och TIMESTAMP. Till exempel: TIMESTAMP(6). Du kan ange stränglängden för VARCHAR och CHARACTER VARYING.

    Exempel

    Kopiera
    VARCHAR(255)
  • Med nyckelordet DEFAULT kan du ange ett standardvärde för en kolumn. Till uttryck kan du använda ett konstant värde eller ett uttryck. Tillåtna uttryck är USER, USERNAME, CURRENT_USER, CURRENT_DATE, CURDATE, CURRENT_TIME, CURTIME, CURRENT_TIMESTAMP, CURTIMESTAMP och NULL.

  • Om du anger att en kolumn ska vara UNIQUE aktiveras automatiskt kontrolltillvalet Unikt för motsvarande fält i FileMaker Pro-databasfilen.

  • Om du anger att en kolumn ska vara NOT NULL aktiveras automatiskt kontrolltillvalet Ej tomt för motsvarande fält i FileMaker Pro-databasfilen. Fältet flaggas med texten Ej tomt på fliken Fält i dialogrutan Hantera databas i FileMaker Pro.

  • När du vill definiera en kolumn som ett containerfält använder du BLOB, VARBINARY eller BINARY VARYING som fälttyp.

  • När du vill definiera en kolumn som ett containerfält som lagrar data externt använder du nyckelordet EXTERNAL. Med relativ_sökväg definieras mappen där data lagras externt i förhållande till FileMaker Pro-databasen. Sökvägen måste anges som baskatalogen i dialogrutan Hantera containrar i FileMaker Pro. Du måste ange antingen SECURE för säker lagring eller OPEN för öppen lagring. Om du använder öppen lagring är beräknad_sökväg mappen i relativ_sökväg där containerobjekten sparas. I sökvägen måste det finnas snedstreck (/) i mappens namn.

Exempel

Med

SQL-kod

textkolumn

Kopiera
CREATE TABLE T1 (C1 VARCHAR, C2 VARCHAR (50), C3 VARCHAR (1001), C4 VARCHAR (500276))

textkolumn, NOT NULL

Kopiera
CREATE TABLE T1NN (C1 VARCHAR NOT NULL, C2 VARCHAR (50) NOT NULL, C3 VARCHAR (1001) NOT NULL, C4 VARCHAR (500276) NOT NULL)

numerisk kolumn

Kopiera
CREATE TABLE T2 (C1 DECIMAL, C2 DECIMAL (10,0), C3 DECIMAL (7539,2), C4 DECIMAL (497925,301))

datumkolumn

Kopiera
CREATE TABLE T3 (C1 DATE, C2 DATE, C3 DATE, C4 DATE)

tidskolumn

Kopiera
CREATE TABLE T4 (C1 TIME, C2 TIME, C3 TIME, C4 TIME)

tidstämpelkolumn

Kopiera
CREATE TABLE T5 (C1 TIMESTAMP, C2 TIMESTAMP, C3 TIMESTAMP, C4 TIMESTAMP)

kolumn för containerfält

Kopiera
CREATE TABLE T6 (C1 BLOB, C2 BLOB, C3 BLOB, C4 BLOB)

kolumn för containerfält för extern lagring

Kopiera
CREATE TABLE T7 (C1 BLOB EXTERNAL 'Filer/MinDatabas/' SECURE) 
CREATE TABLE T8 (C1 BLOB EXTERNAL 'Filer/MinDatabas/' OPEN 'Objekt')