Hiermee maakt u een nieuwe tabel.
Opmerking: De Microsoft Access-database-engine biedt geen ondersteuning voor het gebruik van CREATE TABLE of een van de DDL-instructies met niet-Microsoft Access-database-enginedatabases. Gebruik in plaats daarvan een DAO-methode.
Syntaxis
CREATE [TEMPORARY] TABLE table (field1 type [(size)] [NOT NULL] [WITH COMPRESSION | WITH COMP] [index1] [, field2type [(size)] [NOT NULL] [index2] [, ...]] [, CONSTRAINT multifieldindex [, ...]])
De instructie CREATE TABLE bestaat uit de volgende onderdelen:
Onderdeel |
Beschrijving |
tabel |
De naam van de tabel die u wilt maken. |
field1, field2 |
De naam van een of meer velden die u in de nieuwe tabel wilt opnemen. U moet ten minste één veld maken. |
type |
Het gegevenstype voor field in de nieuwe tabel. |
size |
De grootte van het veld in tekens (alleen velden van het type Tekst en Binair). |
index1, index2 |
Een CONSTRAINT-component waarmee een index voor één veld wordt gedefinieerd. |
multifieldindex |
Een CONSTRAINT-component waarmee een index voor meerdere velden wordt gedefinieerd. |
Opmerkingen
Met de instructie CREATE TABLE definieert u een nieuwe tabel en de bijbehorende velden en veldbeperkingen. Als u NOT NULL opgeeft voor een veld, moeten nieuwe records geldige gegevens bevatten in dat veld.
Met een CONSTRAINT-component worden verschillende beperkingen voor een veld vastgesteld en de component kan worden gebruikt om primaire sleutel vast te stellen. U kunt ook de instructie CREATE INDEX gebruiken om een primaire sleutel of aanvullende indices voor bestaande tabellen te maken.
U kunt NOT NULL gebruiken voor een afzonderlijk veld of binnen een benoemde CONSTRAINT-component die van toepassing is op één veld of een benoemde CONSTRAINT voor meerdere velden. De NOT NULL-beperking mag echter slechts eenmaal op een veld worden toegepast. Als u probeert deze beperking meermaals toe te passen, treedt er een runtimefout op.
Wanneer een tabel van het type TEMPORARY wordt gemaakt, is deze alleen zichtbaar binnen de sessie waarin de tabel is gemaakt. De tabel wordt automatisch verwijderd wanneer de sessie eindigt. Meerdere gebruikers hebben toegang tot een tijdelijke tabel.
Het kenmerk WITH COMPRESSION kan alleen worden gebruikt voor de gegevenstypen CHARACTER en MEMO (ook bekend als TEXT) en synoniemen hiervan.
Het kenmerk WITH COMPRESSION is toegevoegd voor CHARACTER-kolommen vanwege de overstap naar de Unicode-indeling. Voor elk Unicode-teken zijn standaard twee bytes nodig. Voor bestaande Microsoft Access-databases die voornamelijk tekengegevens bevatten, kan dit betekenen dat het databasebestand bijna tweemaal zo groot wordt wanneer het wordt geconverteerd naar de Microsoft Access-indeling. De weergave in Unicode voor talloze tekensets (voorheen SBCS (Single-Byte Character Sets) genoemd), kunnen echter makkelijk worden gecomprimeerd tot één byte. Als u een CHARACTER-kolom definieert voor dit kenmerk, worden de gegevens automatisch gecomprimeerd terwijl ze worden opgeslagen en gedecomprimeerd als ze uit de kolom worden gehaald.
MEMO-kolommen kunnen ook zo worden gedefinieerd dat er gegevens in een gecomprimeerde indeling in kunnen worden opgeslagen. Er geldt echter wel een beperking. Alleen MEMO-kolommen die na compressie minder dan 4096 bytes tellen, worden gecomprimeerd. Alle overige MEMO-kolommen worden niet gecomprimeerd. Dit betekent dat binnen een bepaalde tabel voor een bepaalde MEMO-kolom sommige gegevens mogelijk gecomprimeerd zijn en sommige niet.