CREATE TABLE, instruction

S’applique à
Access pour Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Crée une table.

Remarque

Le moteur de base de données Access ne prend pas en charge l’utilisation de l’instruction CREATE TABLE ou de toute instruction DDL avec des bases de données d’un moteur de base de données autre que Microsoft Access. Utilisez plutôt les méthodes Create de DAO (Data Access Objects).

Syntaxe

CREATE [TEMPORARY] TABLE table (champ1 type [(size)] [NOT NULL] [WITH COMPRESSION | WITH COMP] [index1] [, field2type [(size)] [NOT NULL] [index2] [, ...]] [, CONSTRAINT multifieldindex [, ...]])

L’instruction CREATE TABLE comprend les parties suivantes :

Partie Description
table Nom de la table à créer.
field1, field2 Nom du ou des champs à créer dans la nouvelle table. Vous devez créer au moins un champ.
type Type de données de field dans la nouvelle table.
size Taille du champ en caractères (champs de types Texte et Binaire uniquement).
index1, index2 Clause CONSTRAINT définissant un index de champ unique.
multifieldindex Clause CONSTRAINT définissant un index multi-champ.

      

Remarques

L’instruction CREATE TABLE permet de définir une nouvelle table, ses champs et ses contraintes de champ. Si vous spécifiez NOT NULL pour un champ, de nouveaux enregistrements sont requis pour insérer des données valides dans ce champ.

Une clause CONSTRAINT établit diverses restrictions sur un champ et peut être utilisée pour établir la clé primaire. Vous pouvez également utiliser l’instruction CREATE INDEX pour créer une clé primaire ou des index supplémentaires sur des tables existantes.

Vous pouvez utiliser l’instruction NON NULL sur un champ unique ou à l’intérieur d’une clause CONSTRAINT nommée qui s’applique à une instruction CONSTRAINT nommée portant sur un ou plusieurs champs. Toutefois, vous ne pouvez appliquer la restriction NON NULL qu’une seule fois à un champ. Une tentative d’appliquer cette restriction plusieurs fois génère une erreur d’exécution.

Quand une table TEMPORAIRE est créée, elle est visible uniquement à l’intérieur de la session dans laquelle elle a été créée. Elle est supprimée automatiquement à la fin de la session. Les tables temporaires sont accessible par plusieurs utilisateurs.

L’attribut WITH COMPRESSION peut être utilisé uniquement avec les types de données CARACTÈRE et MÉMO (également appelé TEXTE) et leurs synonymes.

L’attribut WITH COMPRESSION a été ajouté pour les colonnes de type CARACTÈRE en raison de la modification du format de représentation de caractère Unicode. Les caractères Unicode nécessitent uniformément deux octets par caractère. Pour les bases de données Microsoft Access existantes contenant principalement des données de type caractère, cela pourrait signifier que le fichier de base de données doublerait de taille après conversion au format Microsoft Access. Toutefois, la représentation Unicode de nombreux jeux de caractères, ceux précédemment indiqués comme Single-Byte jeux de caractères (SBCS) peut facilement être compressé sur un seul octet. Si vous définissez une colonne de type CARACTÈRE avec cet attribut, les données sont automatiquement compressées pour le stockage, et décompressées lors de leur extraction de la colonne.

Des colonnes de type MÉMO peuvent également être définies pour stocker des données dans un format compressé. Il existe cependant une limitation. Seules les instances de colonnes de type MÉMO qui, une fois compressées, ne dépassent pas 4 096 octets, sont compressées. Les autres instances des colonnes de type MÉMO ne sont pas compressées. Cela signifie que, dans un tableau donné, pour une colonne de type MÉMO donnée, certaines données peuvent être compressées et d’autres pas.