# Le Manuel de &kexi;

## Introduction

&kexi; est une application de gestion de base de données. Elle peut être utilisée pour créer des bases de données, insérer des données, effectuer des requêtes et utiliser les données. Des formulaires peuvent être créés pour fournir une interface personnalisée à vos données. Tous les objets de base de donnée – tables, requêtes et formulaires – sont stockés dans la base de donnée, rendant aisé le partage de données et de structure.

&kexi; fait partie de &calligra;, la suite bureautique de KDE.

En plus d'enregistrer vos bases de données &kexi; dans des fichiers, &kexi; peut aussi stocker vos données sur un serveur de base de donnée. Utiliser un serveur de base de données vous permet de partager votre base de données avec d'autres utilisateurs et d'utiliser la base de données à plusieurs à la fois. Les serveurs de base de données pris en charge par &kexi; sont les suivants :

- MySQL

- PostgreSQL

Plus d'informations sur &kexi; sont disponibles sur la page du site pour Calligra relative à &kexi; et sur le site Internet de Kexi.

Si vous avez des questions sur &kexi; vous pouvez utiliser deux listes de diffusion (en anglais elles aussi) La liste de diffusion des utilisateurs de &kexi; doit être utilisée pour les questions concernant l'utilisation de &kexi; ou le projet &kexi;. La liste de diffusion de développement de &kexi; doit être utilisée pour les questions concernant le développement de &kexi;. Vous trouverez plus d'informations sur la façon de s'inscrire à ces listes, ainsi que d'autres moyens de joindre les développeurs de &kexi; ici.

Ce manuel pour &kexi; 2.5 est supposé se référer au manuel de &kexi; pour Kexi 1.1. Veuillez coordonner toute action avec Jaroslaw Staniek à l'adresse de courrier électronique : kexi at kde.org.

## Bases de &kexi;

- Bases de données Kexi

- Créer un nouveau fichier de base de données

- La fenêtre principale Kexi

  - Éléments principaux de l'application

- Ouvrir un fichier de base de données Kexi existant

  - Ouvrir un fichier de base de données en utilisant la boîte de dialogue d'ouverture de projet

  - Ouvrir un fichier de base de données Kexi existant en cliquant sur l'icône du fichier « kexi »

- Utiliser l'aide incluse

### Bases de données Kexi

De nombreuses applications comme OpenOffice.org, LibreOffice ou &Microsoft; Excel créent des fichiers qui sont appelés documents. &kexi; crée des fichiers aussi, mais nous les appelons ici « fichiers de base de données &kexi; » ou tout simplement « fichiers de base de données ».

En plus de stocker vos bases de données dans des fichiers de bases de données, &kexi; peut aussi accéder à des bases de données sur des serveurs de base de données, raison pour laquelle nous les appelons fichiers de base de données et non simplement bases de données.

Le terme projet &kexi;, ou simplement projet, est aussi utilisé pour désigner une base de données &kexi;, qu'elle soit enregistrée dans un fichier ou sur un serveur de base de données.

Les fichiers de base de données &kexi; ont en général l'extension `.kexi`

### Créer un nouveau fichier de base de données

1. Lancez &kexi; ou s'il est déjà lancé, utilisez Kexi Nouveau...(Ctrl+N).

2. A la page Nouveau Projet, sous la section Projets vides, choisissez Base de données vide.

3. Sur la page Méthode de stockage, cliquez sur Fichier.

4. Sur la page Titre du projet et nom de fichier, saisissez un titre et un nom de fichier pour le projet.

5. Cliquez sur Suivant pour créer le projet.

- Quand vous modifiez le titre du projet, le nom du fichier associé sera modifié en conséquence.

- Vous pouvez utiliser le navigateur de fichier pour sélectionner un dossier où vous souhaitez enregistrer votre fichier de base de données.

### La fenêtre principale Kexi

La Barre d'outils à onglets en haut fournit des accès aux actions et commandes communes.

Le Navigateur de projet et l'Éditeur de propriété sont affichés dans des panneaux de chaque côté de la fenêtre fille. Ils peuvent être re-dimensionnés ou cachés au besoin. On peut cacher un panneau en cliquant la petite croix en haut (juste sous la barre d'outil).

Les objets de base de données (tableaux, requêtes, &etc;) listés dans le Navigateur de projet peuvent être ouverts en cliquant (ou double-cliquant, en fonction des réglages généraux de KDE) sur leur noms.

#### Éléments principaux de l'application

Les principaux éléments de l'application &kexi; sont :

Barre d'outils à onglets

- Contient les commandes disponibles pour l'application. Vous trouverez une description détaillée de toutes ces commandes dans l'annexe.

Panneau du navigateur de projet

- Contient une liste de tous les objets (tableaux, requêtes, formulaires, etc.) créés au sein du projet de base de données actuellement ouvert. Le navigateur contient aussi une petite barre d'outil avec les commandes les plus utilisées relatives aux objets de base de données.

Zone pour les objets de bases de données ouvertes / fenêtres à onglets

- Une zone centrale de l'application occupant la majeure partie de l'écran. L'interface utilisateur contient des onglets qui peuvent être commutés avec les fenêtres qui elles sont toujours en mode maximal.

Le panneau de l'éditeur de propriétés

- contient une liste de propriétés de l'objet de base de données actuellement activé. Pour certains objets (&pex; les composants graphiques d'un formulaire), il peut avoir plusieurs onglets.

#### Barre d'outils à onglets

La barre d'outils est l'endroit qui vous donne accès à la plupart des commandes et des actions de &kexi;.

En utilisant les actions fournies dans les différents onglets de la barre d'outils, vous pouvez :

- Créer / Ouvrir / Fermer des projets Kexi

- Créer des objets de base de données

- Données d'importation / exportation

Selon le contexte, des onglets additionnels peuvent être visibles :

- L'onglet Conception de formulaire n'est visible que lorsque le concepteur de formulaire est en cours d'utilisation.

- L'onglet Conception de Rapports n'est visible que si le concepteur de rapports est en cours d'utilisation.

#### Panneau du navigateur de projet

Le panneau du Navigateur de projet est un des éléments les plus fréquemment utilisés de la fenêtre principale de &kexi;. Le panneau contient une liste de tous les objets créés à l'intérieur du projet de base de donnée Kexi actuellement ouvert. Les objets sont séparés en groupes : tableaux, requêtes, formulaires, rapports et scripts.

Le panneau du navigateur de projet contient aussi une petite barre d'outils pour les commandes les plus fréquemment utilisées (de gauche à droite) : Ouvrir l'objet sélectionné, Concevoir l'objet sélectionné, Créer un objet et Supprimer l'objet sélectionné.

Pour chaque objet de la liste, un menu contextuel est disponible en utilisant le &BDS;.

Un double clic avec le &BGS; sur le nom de l'objet dans la liste vous permet d'ouvrir l'objet en Affichage de données. Si la fenêtre de l'objet était déjà ouverte, l'action n'active que la fenêtre sans changer son mode d'affichage.

Il est possible que votre système d'exploitation ou votre gestionnaire de fenêtre soit configuré pour gérer les simples clics à la place des doubles clics. &kexi; utilise les doubles clics dans le Navigateur de projet pour éviter d'ouvrir par accident de très grands ensembles de données ou d'exécuter des requêtes.

#### Zone pour les objets de bases de données ouvertes / fenêtres à onglets

A chaque fois que vous faites un double clic dans le navigateur de projets, celui-ci s'ouvre dans la zone des objets de bases de données ouvertes. Chaque fenêtre possède son propre onglet dans &kexi;.

Vous pouvez ré-organiser les onglets en faisant des glisser-déposer et en les fermant en utilisant le bouton situé à l'extrémité droite du bandeau des onglets.

Dans quelque temps, il y aura une option pour détacher les onglets pour créer quelque chose de semblable à une interface MDI. Cela pourrait être utile pour des solutions personnalisées ou des affichages multiples.

#### Le panneau de l'éditeur de propriété

Dans le panneau Éditeur de propriétés, vous pouvez modifier les propriétés de l'objet affiché dans la fenêtre active. Selon le contexte, le panneau peut être divisé en plusieurs onglets. Le premier onglet, Propriétés, est toujours visible et contient la liste des propriétés disponibles.

Règles pour utiliser l'éditeur de propriétés :

- Chaque ligne contient une unique propriété.

- Vous pouvez utiliser la souris ou le clavier pour changer les valeurs des propriétés.

- Les types de propriétés les plus utilisés sont :

  - un nombre ; vous pouvez saisir la valeur directement ou l'augmenter ou la diminuer en cliquant avec le bouton gauche de la souris sur les flèches.

  - du texte

  - une liste déroulante de valeurs

  - Oui / Non ; vous pouvez changer la valeur en cliquant sur le bouton. Oui (vrai) signifie que le bouton est pressé, Non (faux) signifie que le bouton est relâché.

- Il n'y a pas besoin de confirmer une valeur modifiée. Les changements sont visibles dès que vous vous déplacez sur une autre ligne de la liste de l'éditeur de propriétés ou si vous appuyez la touche &Entree;.

- Les noms des propriétés récemment modifiées et qui ne sont pas encore enregistrées dans la base de données sont écrits en texte gras.

- Après avoir changé la valeur d'une propriété, un bouton spécial Annuler les changements apparaît à la droite de la liste de l'éditeur de propriétés. En cliquant dessus, vous pouvez redonner la valeur d'origine, extraite de la base de données lors de l'ouverture de l'objet, à la propriété. Le bouton n'est visible que lorsque la propriété est active.

Le panneau de l'éditeur de propriété est vide si :

- aucune fenêtre d'objet de base de données n'est ouverte, ou

- l'objet de base de données actif n'offre pas de propriétés modifiables ; c'est normalement le cas lorsqu'il est ouvert en mode données au lieu de mode conception.

### Ouvrir un fichier de base de données Kexi existant

Il y a deux manières d'ouvrir un fichier de base de données &kexi; existant :

#### Ouvrir un fichier de base de données en utilisant la boîte de dialogue d'ouverture de projet

- Lancez &kexi;. Vous devriez voir la boîte de dialogue de démarrage Bienvenu dans Kexi, qui vous permet de sélectionner l'un des projets récemment utilisés pour l'ouvrir.

- Si le projet n'apparaît pas sur la page des projets récemment utilisés, choisissez Ouvrir... (&Ctrl;O). Vous verrez la boîte de dialogue suivante :

- À partir de la barre d'emplacement, sélectionnez un dossier contenant le fichier que vous recherchez.

- Vous pouvez soit choisir un fichier qui sera immédiatement ouvert. De façon alternative, vous pouvez saisir dans la boîte d'édition Nom : et cliquez sur Suivant.

Notes

- Par défaut, la liste déroulante Filtre : sélectionne Tous les fichiers pris en charge (*.kexi, *.kexic, *.kexis, *.mdb). Au cas où le fichier que vous recherchez aurait une autre extension, vous pouvez modifier la sélection de la liste déroulante Filtre : en choisissant Tous les fichiers pour afficher tous les fichiers disponibles (quelle que soit leur extension).

- Si vous avez sélectionné un fichier d'un type externe, comme un fichier `.mdb` de MS Access, &kexi; va vous fournir les options pour importer le fichier.

- Si vous avez sélectionné un fichier de données de connexion (avec l'extension `.kexic`) ou un fichier de raccourci vers un projet sur le serveur de bases de données (avec l'extension `.kexis`), &kexi; va afficher les dialogues appropriés.

#### Ouvrir un fichier de base de données Kexi existant en cliquant sur l'icône du fichier « kexi »

- Cliquez sur l'icône du fichier depuis votre navigateur de fichier ou bureau. &kexi; va ouvrir ce projet de base de données automatiquement.

Notes

Remarque concernant les accès distants à des fichiers de base de données. Vous pourriez vouloir ouvrir un fichier de base de données situé sur une source distante (&pex; un serveur Internet ou FTP ou un dossier partagé d'un réseau MS Windows). KDE vous permet d'ouvrir des fichiers depuis une source distante directement dans vos applications et d'enregistrer vos modifications à la source, mais, ce n'est pas le cas avec les fichiers de base de données. En cliquant sur un fichier de base de données situé sur une source distante, une copie de ce fichier va être téléchargée dans un dossier temporaire de votre ordinateur et toutes vos modifications seront effectuées sur ce fichier local. L'original distant de ce fichier restera inchangé. Par conséquent, il est recommandé de copier (télécharger) tout d'abord, le fichier sur votre ordinateur, puis d'ouvrir le fichier et le recopier sur la source distante si vous voulez le conserver à jour.

### Utiliser l'aide incluse

Il existe les deux manières suivantes d'obtenir l'aide incluse de &kexi; :

Le Manuel sous la forme d'un document électronique.

- Le manuel est disponible en appuyant sur la touche F1 ou cliquez sur dans la barre de menu et sélectionnez Aide.

Les Qu'est-ce que c'est ? .

- Sélectionnez Qu'est ce que c'est ? à partir du menu qui apparaît lorsque que vous cliquez et ensuite cliquez sur la zone de l'application pour obtenir des astuces dessus.

## Construire des bases de données simples

- Introduction

- Conception de table de base de données

  - La fenêtre du concepteur de table

- Saisie de données dans des tables

- Conception de requête de base de données

- Conception de formulaires

  - Termes les plus importants

  - Formulaires par rapport aux tables

  - Fonctionnement avec conception de formulaires

  - Utilisation de l'onglet des composants graphiques

  - Insertion de composants graphiques - champs de texte

  - Association avec des sources de données

  - Insertion d'étiquettes de texte

  - Actions

  - Disposition des composants graphiques

- Saisie des données utilisant des formulaires

### Introduction

Pour apprendre les bases de &kexi;, nous allons construire une base de données simple se servant des fonctionnalités les plus élémentaires de &kexi;. Pour simplifier les choses, on ne va pas aborder ici les problèmes complexes de la conception de base de données.

Démarrer en créant un nouvel annuaire téléphonique vide.

À partir d'un nouveau projet de base de données vide, effectuez les actions suivantes :

1. Concevoir des tables de bases de données. Veuillez lire la section appelée Conception de tables de bases de données.

2. Saisir des données dans les tables. Veuillez lire la section nommée Saisie de données dans les tables.

3. Concevoir des requêtes de base de données. Veuillez lire la section nommée Concevoir des requêtes de bases de données.

4. Concevoir des formulaires. Veuillez lire la section nommée Concevoir des formulaires.

5. Utiliser des formulaires pour saisir des données. Veuillez lire la section nommée Saisie de données en utilisant des formulaires.

### Conception de tables de bases de données

D'abord, il y aura deux tables ajoutées à votre base de données : `Personnes` et `Téléphones`. Il y a exactement les mêmes tables que décrites dans le chapitre Base de données et feuille de calcul. Un modèle peut être trouvé dans la section Intégrité et validité des données dans ce chapitre.

1. Sélectionnez Table à partir de la barre d'outils. Vous pouvez aussi utiliser Créer Objet / Table dans le menu contextuel de l'élément Tables dans le navigateur de projet.

2. La fenêtre du concepteur de tables apparaîtra. En regardant en haut de celle-ci, vous remarquerez que &kexi; vous propose un nom générique comme Table1 pour la nouvelle table. La conception de la table n'est pas encore enregistrée, ainsi, vous pouvez lui donner un nom adapté plus tard. De plus, et pour la même raison, le nom de la table n'est pas encore visible dans le Navigateur de projets.

#### La fenêtre du concepteur de table

##### La fenêtre de conception de tables se compose des colonnes suivantes :

- - Informations additionnelles à propos de ce champ.

- Légende du champ – légende du champ, qui va être affichée lors de l'entrée des données.

- Type de données – une liste déroulante contenant une liste de types de données, permettant de définir une règle de base pour les données entrées dans un certain champ. Par exemple, quand un champ est défini comme ayant des données de type nombre entier, un utilisateur de la base de données ne pourra pas saisir de lettres dans ce champ.

- Commentaires – Vous pouvez saisir ici toute information utile à la compréhension d'un champ donné. Ce texte supplémentaire sera enregistré avec l'organisation de la table et ne sera visible qu'en mode conception.

Dans la fenêtre du concepteur de tables, chaque ligne correspond à un champ unique de la table. Vous pouvez observer que vous êtes en mode de conception car le bouton Conception est activé dans la barre d'outils pour le concepteur de tables.

##### Conception de la table « Personnes »

Dans la première ligne, cliquez sur la cellule dans la colonne Titre de champ et saisissez `Nom` comme titre de champ. La saisie du champ Titre de champ remplira automatiquement le champ Nom comme vu dans le panneau de l'Éditeur de propriétés.

Notes à propos des noms et légendes des champs

- Chaque champ doit avoir un nom et une légende, ils ne peuvent être vides.

- Le nom de champ est un mot utilisé dans la base de données, en général, non visible par les utilisateurs de l'application de base de données. Il ne doit pas contenir de caractères spéciaux (nationaux) comme « ± », « ¶ », « Ü » ou de caractères d'espaces. Il ne doit contenir que des lettres romaines, des nombres et un signe de tiret bas _. Utilisez ce dernier à la places des espaces ou des tirets.

- Les noms de champs doivent commencer par une lettre ou un signe de tiret bas _, jamais par un nombre.

- Cela n'a pas d'importance que vous utilisiez des minuscules ou de majuscules. Pour &kexi;, le nom de champ `Personnes` est identique à `personnes`.

- Dans les légendes des champs, par contre, vous pouvez saisir n'importe quel lettre ou caractère spécial. Elles seront affichées aux utilisateurs de l'application de base de données.

De la même manière, saisissez les champs suivants dans la conception de la table :

- `nom`

- `rue`

- `numéro de rue`

- `ville`

Tous les champs ci-dessus, sauf `numéro-rue`, sont de type texte. Modifiez le type du champ `numéro-rue` en entier. Pour le réaliser, cliquez sur une cellule de la colonne Type de données, ligne `numéro-rue` et cliquez sur le bouton avec une liste déroulante ou appuyez sur F4. La liste des types de données apparaîtra. Vous pouvez aussi utiliser les touches de flèches Haut et Bas pour choisir un autre type. Sélectionnez le type Nombre entier.

A partir de maintenant, le champ `numéro-rue` n'accepte que des nombres.

La conception de la table « Personnes » est terminée. Cliquez sur le bouton Données dans la barre d'outils pour terminer la conception et passez en Vue de données pour la table. Cela vous permet de saisir des données dans la table.

Comme la conception n'est pas encore enregistrée dans la base de données, la fenêtre de dialogue Enregistrer l'objet sous apparaît. Vous devez définir le nom pour cette nouvelle table.

&kexi; fournit un nom générique comme Table1. Pour changer ce nom, saisissez `Personnes` dans le champ Titre et appuyez sur la touche &Enter; ou cliquez sur le bouton Ok. Le champ Titresera utilisé pour l'affichage la table pour les utilisateurs finaux de la base de données, &cad; comme un formulaire. A la différence du nom, le titre peut contenir n'importe quel caractère, y compris les espaces et les caractères spéciaux.

Veuillez noter que la saisie du champ Titre remplit automatiquement le champ Nom. Pour vous aider, la règle concernant le seul usage de lettres, de nombres et du caractère _ est maintenue. Vous pouvez changer le contenu du champ Nom si vous le souhaitez.

1. Une confirmation vous sera demandée concernant l'ajout de la clé primaire à la table. Cliquez sur le bouton Ajouter une clé primaire pour continuer.

2. La table `Personnes` a été créée et ouverte dans l'affichage de données. Son nom apparaît dans le panneau du Navigateur de projet.

3. Créé la table `Téléphone`, de la même façon que la table `Personnes`

4. Créé un champ `Personne` de type nombre Entier et `Téléphone` de type Texte.

5. Cliquez sur le bouton Données de la barre d'outils et saisissez le titre `Téléphones` pour la table. Comme pour votre table précédente, permettez à &kexi; de créer une clé primaire.

### Saisie de données dans les tables

Vous avez conçu deux tables, `Personnes` et `Téléphones`. Aucune des deux ne contient encore de données. Vous pouvez en saisir quelques une. Dans ce chapitre, vous apprendrez comment faire cela rapidement et efficacement.

Démarrez avec la table `Personnes` table. Ouvrez la dans l'affichage de données en utilisant le menu contextuel ou le bouton de la barre d'outils Ouvrir dans le Navigateur de projet. La cellule actuelle est marquée par une fine bordure (en général noire), un curseur de cellule. La ligne actuelle, &cad; celle dans laquelle vous avez placé votre curseur rectangulaire, est marquée sur le coté gauche par un symbole de flèche.

Vous pouvez naviguer entre les cellules d'un table grâce aux touches de direction, Page vers le haut, Page vers le bas, Accueil, Fin. Vous pouvez aussi cliquer avec la souris sur une cellule pour la sélectionner.

Au départ, après l'ouverture de la table `Personnes`, le curseur est positionné dans la colonne `Id`. La colonne est définie avec une propriété d'auto-numérotation, marquée par un texte bleu ( numérotation automatique) dans la dernière ligne. Cela signifie que vous n'avez pas besoin de saisir de valeurs ici à la main lorsque vous saisissez des données pour une nouvelle ligne car la cellule sera remplie automatiquement avec des nombres successifs.

L'insertion de nouvelles lignes et la saisie de données pour elles dans &kexi; est différent de ce qui est fait avec les feuilles de calcul. Pour saisir des données dans une nouvelle ligne, vous avez besoin d'utiliser les touches de flèches ou la souris pour déplacer votre curseur vers la dernière ligne qui est vide, spéciale et marquée avec un signe plus. Placez votre curseur dans la colonne `Nom` (seconde) et saisissez un nom de personne. Saisissez aussi un nom de famille, une rue, un numéro de rue et une ville. Une fois fait, déplacez le curseur de cellule vers la dernière ligne vide, soit en utilisant la touche Bas ou en cliquant sur la dernière ligne avec la souris pour ajouter une nouvelle ligne.

#### Détails à propos des actions disponibles lors de l'entrée de données dans les tables

- Dès que vous saisissez le premier caractère, la ligne actuelle est en train d'être modifiée. Un symbole de stylo apparaît à gauche de la table.

- Un double clic sur une cellule avec le bouton gauche de la souris ou en appuyant sur &Enter; ou sur la touche F2 démarre ensuite la modification de la ligne courante.

- Un appui sur la touche &Esc; lorsque le contenu d'une cellule est modifiée annule les modifications qui y ont été faites. Cependant, le symbole de crayon ne disparaîtra pas car vous pouvez encore vous déplacer vers une cellule différente de la ligne modifiée pour en modifier le contenu. Pour annuler les modifications faire sur toute la ligne modifiée, appuyez une fois de plus sur la touche &Esc;.

- Au lieu d'appuyer sur la touche &Esc;, vous pouvez cliquer sur le bouton de la barre d'outils Annuler l'enregistrement des modifications.

- Appuyez sur les touches &Maj; &Enter; pour valider les modifications faites pour toutes les cellules de la ligne actuellement modifiée.

Remplissez la table `Téléphones` avec des données. Dans la colonne `Personne`, vous devez fournir un nombre `Id` pour la personne présente dans la table `Personnes`.

### Conception de requêtes de base de données

L'objectif initial d'une base de données est d'enregistrer et d'aider à la l'extraction des informations que vous recherchez. Contrairement aux bases de données couchées sur des feuilles de papier, une base de données &kexi; vous permet de définir plusieurs critères de recherche. Les résultats sont renvoyés plus rapidement, même pour de très vastes ensembles de données. Tout cela est une force des bases de données, cependant, pour être capable de traiter des requêtes efficaces dans vos bases de données, vous devez apprendre comment exprimer à la base de données, ce que vous recherchez.

Avec des requêtes de bases de données, vous pouvez restreindre les données provenant d'une table à un ensemble prédéfini de lignes et de colonnes comme regrouper dynamiquement des données provenant de tables multiples.

Pour voir comment fonctionnent en pratique les requêtes, vous pourriez créer un requête sur les contacts pour regrouper des données en provenance de deux tables : `Personnes` et `Téléphones` (conçuesici et remplies avec des donnéesici).

1. Créé une nouvelle requête vide en sélectionnant Requête à partir de la barre d'outils. La fenêtre de conception apparaîtra. La fenêtre est découpé en deux zones : la relation entre requête en haut et en dessous les colonnes de requête.

2. Sélectionnez la table `Personnes`dans la liste déroulante Table : situé en haut de la fenêtre et cliquez sur le bouton Insérer. Une représentation graphique de la table apparaîtra dans la zone des relations. Faites la même chose pour la table `Téléphones` pour l'insérer aussi.

3. Ajoutez les relations de requête, en utilisant le glisser-déposer avec la souris : cliquez sur le champ `Id` dans la table `Personnes`, glissez la et déposez la dans le champ `personne` de la table `Téléphone`. Ceci regroupera tous les champs en créant une nouvelle relation.

4. Faites un double clic sur le champ `Nom` dans la table `Personnes` pour ajouter les champs comme une colonne de la requête. D'une façon similaire, ajoutez les champs `Nom de famille`, `Rue`, `Numéro-rue`, `Ville` à partir de la table `Personnes` et téléphone à partir de la table `Téléphones`.

5. La conception de requête est maintenant terminée pour faire un test. Cliquez sur le bouton Données de la barre d'outils, pour passer de la conception à l'affichage des données fournies par les résultats des requêtes.

6. Enregistrez la conception de la requête pour usage ultérieur en cliquant sur le bouton Enregistrer de la barre d'outils. Parce que la conception de la requête n'a pas été encore traitée, une demande pour y donner un nom vous sera faite. Saisissez le texte `Contacts` dans le champ de titre et cliquez sur le bouton Ok

### Conception de formulaires

- Termes les plus importants

- Formulaires par rapport aux tables

- Fonctionnement avec conception de formulaires

- Utilisation de l'onglet des composants graphiques

- Insertion de composants graphiques - champs de texte

- Association avec des sources de données

- Insertion d'étiquettes de texte

- Actions

- Disposition des composants graphiques

#### Termes les plus importants

Formulaire

- Une fenêtre servant à faciliter la saisie et la présentation des données sur l'écran de l'ordinateur.

Source de données du formulaire

- La table de base de données ou requête fournissant des données affichées dans le formulaire. La source de données est nécessaire car les formulaires eux même sont les seuls outils pour afficher et saisir des données, alors que les tables et les requêtes sont les sources de données. Les nouveaux formulaires sont vides et aucune source de données ne leur est associée. Ainsi, ils n'affichent aucune donnée venant de votre base de données, sauf si vous leur associez une source de données.

Champ de formulaire

- Équivalent direct d'une colonne dans une table ou une requête. Les plus fréquemment utilisés sont les champs servant à afficher du texte et des nombres. L'entrée d'une nouvelle valeur dans un tel champ provoque un changement dans la colonne correspondante de la table ou requête liée (après avoir accepté le changement).

Conception du formulaire

- Tâches à réaliser définir l'apparence et les fonctions du formulaire. Pour faire ceci, vous devez fournir une source de données. Insérez des champs de formulaire de types variés et placez les dans l'emplacement approprié.

Composant graphique de formulaire

- Éléments de formulaires. Les principaux type de composants graphiques sont :

  - Composants graphiques affichant des informations, &pex; une zone de texte ou d'image. Chaque composant graphique de ce type peut être relié à un champ de source de données (une colonne de table ou de requête). Cependant, de tels composants graphiques sont appelés dans des champs courts de formulaire.

  - Les composants graphiques capables de réaliser une action définie, &pex; un bouton à pousser qui peut fermer le formulaire actuel. Dans les autres applications, ce type de composant graphique est quelquefois appelé formulaire de contrôle car il peut réaliser des actions préalablement définies pour contrôler le comportement de vos applications de base de données.

  - D'autres composants graphiques permettant d'améliorer l'apparence du formulaire &pex; un « composant graphique de ligne » peuvent séparer visuellement deux zones d'un formulaire.

Composant graphique conteneur

- Un composant graphique en peut contenir d'autres dans sa zone. Par exemple, le composant graphique de cadre ou celui d'onglet sont des conteneurs. La surface du formulaire lui-même est aussi un conteneur. Un bouton de commande n'est pas considéré comme un conteneur car il n'est pas possible d'y insérer un composant graphique dedans. Dans des cas plus complexes, des composants graphiques de conteneurs peuvent être insérés dans un conteneur. Ainsi, l'inclusion en série est possible.

#### Formulaires vis à vis de tables

Dans le chapitre Saisie de données dans des tables, vous avez appris comment saisir des données directement dans des tables en utilisant leur affichage en feuille de données. Cependant, dans de nombreux cas, les formulaires sont beaucoup adaptés pour la saisie de données :

- Une table peut avoir trop de colonnes pour que vous puissiez les afficher toutes à l'écran. Un formulaire permet d'afficher de telles données sur plusieurs lignes.

- Un formulaire permet de séparer visuellement les champs de données en groupes logiques, augmentant ainsi la lisibilité. Les étiquettes avec des informations additionnelles peuvent être insérées pour donner aux utilisateurs plus d'astuces sur comment utiliser le formulaire ou à quoi correspondent les champs de données fournis.

- Des boutons de commande peuvent être utilisés dans les formulaires pour implémenter les commandes les plus fréquentes, afin que les utilisateurs puissent utiliser les formulaires comme les applications qu'ils connaissent.

Dans un affichage de feuille de données, l'affichage de champs de texte ou d'images ou des données sur plusieurs lignes est aussi facile que dans les formulaires.

#### Fonctionnement avec conception de formulaires

Comme pour la conception de tables ou de requêtes, vous avez la possibilité d'utiliser les affichages de données et de conception. La conception de formulaire est réalisé dans l'affichage de conception. La fenêtre de conception de formulaire sera souvent référencée comme Concepteur de formulaire.

1. Pour créer un nouveau formulaire vide, sélectionnez Formulaire à partir de la barre d'outils. De façon optionnelle, vous pouvez utiliser la commande Créer Objet / Formulaire à partir du bouton à liste déroulante dans la barre d'outils du navigateur de projets ou la commande Créer Objet / Formulaire à partir du menu contextuel du navigateur de projets.

2. Un nouveau cadre va apparaître, vous pouvez re-dimensionner le formulaire en déplaçant les bordures. Le formulaire est couvert d'une grille qui simplifie le placement précis des composants graphiques.

Comme pour la conception de table, le concepteur de formulaire propose un panneau Éditeur de propriétés. Pour économiser un peu d'espace sur l'écran, le panneau possède trois ongles associés au formulaire actuellement sélectionné :

L'onglet de propriétés

- Contient une liste de propriétés du composant graphiques actuellement sélectionné.

L'onglet de sources de données

- Contient des propriétés spécifiquement associées à la source de données du composant graphique actuellement sélectionné ou au formulaire lui même.

L'onglet de composants graphiques

- Contient une hiérarchie de toutes les composants graphiques du formulaire. La liste simplifie la navigation entre les éléments et leur recherche par nom.

Vous pouvez trouver des informations sur le nom et le type du composant graphique actuellement sélectionné dans le premier et deuxième onglet.

Des barres d'outils supplémentaires sont aussi disponibles :

- La barre d'outils Composants graphiques utilisée pour insérer de nouveaux composants graphiques dans le formulaire. Sélectionnez Conception de formulaire pour l'afficher.

#### Utilisation de l'onglet des composants graphiques

L'onglet des composants graphiques dans le panneau des Propriétés fournit une liste de composants graphiques de formulaires et leurs hiérarchies. Chaque composant graphique est présenté avec leur hiérarchie à coté des autres présents sur le même niveau (le même conteneur parent). Les composants graphiques fils (à l'intérieur du conteneur) sont présentés en utilisant leurs noms avec indentation.

Le nom et le type de chaque composant graphique sont affichés. L'icône du type est aussi affichée – la même que celle affichée dans la barre d'outils utilisée lors de la conception du formulaire.

- Le changement de la sélection courante dans la liste provoque la sélection appropriée du formulaire réalisé. Ceci permet une recherche plus facile de composant graphique par nom et une navigation plus facile. Par exemple, il est possible de sélectionner un composant graphique par nom puis de passer sur l'onglet Propriétés pour modifier les propriétés de celui-ci.

- Maintenez la touche&Ctrl; enfoncée pendant qu'un composant graphique de la liste est sélectionné permet d'en sélectionner plusieurs à la fois. Maintenir la touche &Maj; enfoncée permet de sélectionner des listes entières de composants graphiques.

Donner aux composants graphiques des noms explicites peut être utile mais pas obligatoire. Veuillez noter que le nom de composant graphique est une propriété qui n'est pas visible à l'utilisateur de votre formulaire. Les utilisateurs ne voient qu'un texte de composant graphique, fourni par la propriété Texte ou son équivalent.

#### Insertion de composants graphiques - champs de texte

Créons un formulaire fournissant des informations concernant les personnes, &cad; un formulaire relié à la table `Personnes`.

Si le formulaire venant d'être réalisé doit affiché des données obtenues à partir de la base de données, vous devez y placer les champs appropriés dessus. Pour le faire, utilisez les boutons présents sur la barre d'outils Composants graphiques. Chaque bouton correspond à un type simple de composant graphique.

1. Cliquez sur le bouton Zone de texte dans la barre d'outils Composants graphiques.

2. Cliquez sur la surface du formulaire avec le bouton gauche de la souris. Un composant graphique de nouvelle fenêtre de texte sera placée au point sur lequel vous avez cliqué. Avant que vous ne relâchiez, vous pouvez faire glisser votre souris pour définir la taille désirée pour le composant graphique.

3. Si besoin est, vous pouvez déplacer le composant graphique inséré à la position désirée par un glisser & déposer. Vous pouvez ensuite re-dimensionner le composant graphique en déplaçant une des petites boîtes apparaissant aux coins. Remarquez que ces boîtes ne sont visibles que lorsque le composant graphique est sélectionné. Si vous sélectionner un autre composant graphique ou la surface du formulaire, les boîtes vont disparaître.

4. Cliquez à nouveau sur le bouton de barre d'outils Zone de texte et cliquez sur la surface du formulaire pour y insérer un autre composant graphique. Répétez cette action encore une fois, jusqu'à ce que vous obteniez trois autres zones de texte insérées dans votre formulaire. Pour raison de simplicité, la limite de cet exemple sera fixée à cinq champs de données.

- Un menu contextuel est disponible dans le mode de conception de formulaire, activé par un clic de bouton droit de la souris. Cliquez le composant graphique désiré ou la surface du formulaire. Le menu propose des commandes comme Couper, Copier, Coller, Supprimer et d'autres encore, plus complexes. Des raccourcis clavier sont aussi disponibles pour ces commandes. Certaines de ces commandes ne sont disponibles que pour certains types de composants graphiques.

- Les commandes Couper, Copier et Coller offrent la possibilité de déplacer ou de copier des composants graphiques entre formulaires, même entre des projets séparés de bases de données.

- Maintenir la touche &Ctrl; enfoncée lors du clic sur un composant graphique permet d'en sélectionner plusieurs.

- Au lieu d'utiliser les commandes Copier et Coller pour dupliquer un composant graphique au sein du même formulaire, vous pouvez maintenir enfoncée la touche &Ctrl; lors du déplacement du composant graphique. Lorsque le bouton de la souris est relâché, le composant graphique que vous avez fait glisser ne sera pas déplacé mais copié sur le nouvel emplacement.

#### Associations à des sources de données

Les champs que vous avez insérés ne possèdent encore aucune source de données associée. Ainsi, ils ne sont pas capables d'afficher des informations à partir de la base de données. Pour associer une source de données, utilisez l'onglet (Source de données) du panneau Éditeur de propriétés.

La toute première étape est de défini la source de données du formulaire, &cad; un emplacement où doivent être recherchées les données à afficher. Comme indiqué ci-dessus, vous utiliserez la table `Personnes` comme source de données pour votre nouveau formulaire.

1. Cliquez sur la surface du formulaire, puisque vous allez modifier ses propriétés.

2. Passer à l'onglet (Source de données) et saisissez le nom de la table `Personnes` dans la liste déroulante Source de données du formulaire. Alternativement, vous pouvez sélectionner ce nom à partir de la liste déroulante.

Vous avez associé une source de données de formulaire. Maintenant, vous devez définir une source de données du composant graphique.

1. Cliquez sur le premier composant graphique de zone de texte en haut du formulaire.

2. Dans l'onglet (Source de données) du panneau de propriétés, saisissez le nom de champ `nom` dans la liste déroulante Source de données du composant graphique. Alternativement, vous pouvez sélectionner ce nom à partir de la liste déroulante.

3. Cliquez sur le composant graphique de champ de texte suivant et saisissez `nom de famille` comme source de données.

4. Saisissez les sources de données pour les champs de texte pour rue, numéro-rue et ville d'une façon similaire.

Vous pouvez enregistrer maintenant la conception du formulaire (ceci n'est pas obligatoire pour tester le fonctionnement du formulaire). Pour enregistrer, cliquez sur le bouton de barre d'outils Enregistrer. Durant l'enregistrement, une demande vous sera faite pour saisir u nom de formulaire. Saisissez `Personnes` comme titre et cliquez sur le bouton Ok. Le nom du formulaire sera rempli automatiquement.

Ceci est le bon moment pour tester notre formulaire. Cliquez sur le bouton de la barre d'outils Données. Sauf si vous avez commis une erreur durant la saisie des sources de données, vous devriez vois les champs de formulaire remplis avec les données provenant de la table `Personnes`

- Si vous souhaitez supprimer l'association de source de données pour le composant graphique, vous pouvez utiliser le bouton dans la boîte de dialogue Source de données du composant graphique.

- Utilisez le bouton (Aller à la source de données sélectionnée) pour sélectionner la table ou la requête appropriée dans le Navigateur de projets. Ainsi, vous pouvez rapidement ouvrir une table ou une requête étant la source de données du formulaire.

#### Insertion d'étiquettes de texte

Pour que l'utilisateur du formulaire identifie plus facilement la signification de chaque composant graphique de champ, des étiquettes de texte devraient être ajoutées avec des libellées appropriés. Pour créer des étiquettes de texte, le composant graphique Étiquette est utilisé.

Insérez trois composants graphiques d'étiquettes de texte sur le formulaire, en les plaçant sur le coté gauche des champs de texte (ou, sur le coté droit, si votre système d'exploitation utilise un disposition de droite vers la gauche). Lors de l'insertion d'une nouvelle étiquette, un curseur de texte apparaît à l'emplacement où vous pouvez saisir le titre souhaité. Saisissez successivement : `Nom`, `Nom de famille`, `Rue`, `Numéro-Rue` et `Ville`. De plus, en haut du formulaire, insérez une autre étiquette affichant le nom du formulaire, &cad;`Personnes`. Agrandissez la taille de l'étiquette et augmentez la taille de la police en utilisant Police dans l'onglet Propriétés.

#### Actions

Une action est une activité simple isolée dans l'application, disponible pour que l'utilisateur l'exécute. Elle peut aussi être exécutée automatiquement comme réaction par rapport à un évènement données (&pex; après ouverture d'un formulaire).

##### Assigner des actions à des boutons du formulaire

De nombreuses actions peuvent être assignées aux boutons d'un formulaire. Les actions ainsi assignées sont lancées après que le bouton soit cliqué.

Pour assigner une action :

1. Changer vers l'affichage de conception de formulaire, si vous vous ne l'avez pas encore fait.

2. Sélectionnez un composant graphique existant de bouton en cliquant dessus ou insérez en un nouveau sur le formulaire. Si vous avez inséré un nouveau bouton, saisissez son titre et appuyez sur la touche &Enter;.

3. Cliquez sur le composant graphique de bouton avec le bouton droit de la souris pour afficher le menu contextuel.

4. A partir du menu contextuel, sélectionnez la commande Associer une action....

5. Une fenêtre de boîte de dialogue Association d'une action à un bouton apparaîtra présentant une liste des actions disponibles. Une des actions est sélectionnée si le composant graphique est déjà associé à une action. sinon, la liste de Catégorie d'actions prend en compte l'élément Pas d'action.

6. A partir de la liste Catégorie d'action, sélectionnez l'élément Actions d'applications. Les actions disponibles pour toute application seront listées.

7. Choisissez une de ces actions de la liste (&pex; Supprimer l'objet sélectionné).

Après avoir basculé dans l'affichage des données de formulaire, vous pouvez essayer si l'action fonctionne.

- Pour supprimer une allocation d'action, sélectionnez l'élément Pas d'action à partir de la liste de Catégorie d'actions de la fenêtre de boîte de dialogue Allocation d'une action à un bouton.

- Les actions ne fonctionnement que dans un affichage de données d'un formulaire. Tous les allocations 'actions ne sont pas forcément raisonnables. Par exemple, l'action Police... est disponible dans l'affichage des données mais seulement si vous avez sélectionné un composant graphique dans l'affichage de conception. Si vous effectuez des modifications aux paramètres de police, celles-ci sont appliquées au texte de ce composant graphique sélectionné.

#### Dispositions des composants graphiques

Dans la plupart des cas, les composants graphiques devront être arrangés et alignés. Ce n'est pas très pratique de les positionner et de les re-dimensionner à la main et de plus les positions et tailles ne sont pas ajustées lorsque l'utilisateur re-dimensionne le formulaire. En fait, la situation est encore pire puisque vous ne pouvez pas prévoir l'espace requis par un formulaire donnée, à cause des différentes tailles de polices et résolutions d'écrans possibles.

Vous pouvez vous aider d'un outil spécial, appelé la disposition des composants graphiques, pour automatiquement répartir les éléments du formulaire. La mise en forme des composants graphiques est l'action de grouper deux éléments ou plus, afin que ceux-ci soient bien placés et aient la bonne taille.

Utiliser la disposition des éléments dans un formulaire améliore l'alignement. De plus, l'espace est mieux utilisé. Les zones de texte sont plus proches les unes des autres et l'espacement est constant.

##### Politiques de taille des composants graphiques dans une disposition

Au lien de fixer une taille fixe pour vos composants graphiques dans &kexi;, vous pouvez choisir parmi des stratégies variées de tailles de composants graphiques. Une stratégie de taille est une stratégie flexible pour contrôler comme un composant graphique est étiré (ou réduit) selon les composants graphiques voisins et l'espace disponible dans le formulaire.

Après avoir insérer les composants graphiques, la ligne sera redimensionnée pour ajuster leurs textes visibles.

Pour chaque composant graphique inséré dans le formulaire, il y a des paramètres pour la stratégie de taille, disponible dans l'Éditeur de propriétés. Les paramètres sont présentés dans un groupe de propriétés nommé Stratégie de taille.

Ce groupe de propriétés contient :

Type de taille horizontale

- définit la taille horizontale du composant graphique,

Type de taille verticale

- définit la taille verticale du composant graphique,

Étirement horizontal

- définition de la force de l'activité pour la stratégie de la taille horizontale,

Étirement vertical

- définition de la force de l'activité pour la stratégie de la taille verticale,

##### Valeurs des politiques de taille

Les valeurs suivantes sont disponibles dans la liste déroulante pour Stratégie Horizontale. et Stratégie Verticale, visible dans l'Éditeur de Propriétés :

Fixée

- Cette valeur signifie qu'il est impossible de re-dimensionner automatiquement le composant graphique. Il doit toujours conserver sa taille constante telle que définie au moment de la conception (largeur et hauteur),

Minimum

- Cette valeur signifie que la taille originale du composant graphique est défini à la valeur minimale autorisée. Cela est suffisant et il n'y a pas besoin d'étirer le composant graphique. Mais ce dernier sera étiré, si nécessaire. Ce type de stratégie peut être utilisée pour forcer le composant à être étirer sur la totalité en longueur ou en hauteur, en particulier, si vous définissez une valeur d'étirement supérieure à 0.

Maximum

- cette valeur signifie que la taille originale du composant graphique est fixée au maximum permis et peut être diminuée si d'autres composants graphiques ont besoin de plus d'espace, sans compromettre l'utilisation et la lisibilité du composant graphique.

Préférée

- cette valeur signifie que la taille originale du composant graphique est la meilleure et la préférée ; le composant graphique peut cependant être étiré ou compressé, tout en restant lisible.

Expansion

- cette valeur signifie que la taille originale du composant graphique est raisonnable mais l'élément peut aussi être compressé ; il peut de même être étiré pour prendre autant de place que possible,

Expansion minimale

- cette valeur signifie que la taille initiale du composant graphique est permise ; il peut aussi être étiré pour prendre autant de place que possible,

Ignorée

- cette valeur signifie que la taille originale du composant graphique est ignorée, l'élément peut être étiré pour prendre autant de place que possible. Les autres composants graphiques ne le permettent normalement pas.

Des types d'éléments différents ont des politiques de tailles par défaut différentes ; par exemple, les boutons ont une politique de taille Minimum par défaut (dans les deux directions), alors que les zones de texte ont une politique de taille Fixée par défaut.

Les politiques de tailles les plus fréquemment utilisées sont Préférée, Minimum et Maximum.

##### Étirement vertical et horizontal

Les propriétés d'Étirement vertical et d'Étirement horizontal acceptent des valeurs entières supérieures ou égales à 0. Ces propriétés permettent d'ajuster précisément le comportement des politiques de taille. Les valeurs par défaut de ces propriétés sont à 0. Une valeur plus grande d'étirements signifie que le composant graphique sera étiré plus que les composants graphiques ayant une valeur d'étirement plus faible.

### Saisie de données en utilisant des formulaires

La saisie et l'édition de données est normalement la tâche de l'utilisateur de l'application de base de données. Le concepteur de la base de données doit donc vérifier si le formulaire permet de saisir des données valables et fonctionne comme prévu.

Pour tester votre formulaire, passez à son affichage en données. Une ligne unique de données de base de données (enregistrement) sera affichée. Vous pouvez vous déplacer de champ en champ en utilisant le bouton gauche de la souris ou les touches et &Maj; . Pendant la modification, il y aura une icône en forme de crayon visible près du navigateur d'enregistrement. Après la saisie de données dans la ligne (enregistrement), vous pouvez appuyer sur les touches &Maj; &Enter; ou cliquez sur le bouton de barre d'outils Enregistrer l'enregistrement pour valider les modifications faites sur la ligne courante. Un clic sur le bouton de barre d'outils Annuler les modifications d'enregistrement effacera les modifications faites sur la ligne courante et restituera le contenu des champs de données. Toutes les fonctions du navigateur sont aussi disponibles d'une façon similaire comme dans l'affichage de tables de données.

## Configuration de Kexi

- Placement ou retrait des panneaux latéraux

### Placement ou retrait des panneaux latéraux

Les panneaux latéraux du Navigateur de projet et de l'Éditeur de propriétés peuvent être détachés par les méthodes suivantes :

- Double clic sur la barre avec « poignée » sur le haut du panneau ; ou

- Cliquez une fois sur le bouton en forme de diamant en haut du panneau, proche du x.

Une fois détachées, les fenêtres peuvent être encastrées de nouveau à la fenêtre principale avec les même méthodes :

- Double clic sur la barre avec « poignée » sur le haut de la fenêtre ; ou

- Cliquez une fois sur le bouton en forme de diamant en haut du panneau, proche du x.

Quand vous retirez un panneau, &kexi; se souvient de la dernière position de placement. Ainsi, quand vous placez le panneau de nouveau, il sera placé à la même position que son placement précédent.

## Référence des commandes

- L'onglet de Kexi

- L'onglet de création

- L'onglet de données

- L'onglet de données externes

- L'onglet des outils

- L'onglet de conception de formulaires

- L'onglet de conception de rapport

### L'onglet de Kexi

L'onglet de &kexi; est l'emplacement où vous pouvez interagir avec les projets &kexi;.

La sélection d'une action ouvrira un écran, juste à droite du menu, fournissant des options sur l'action que vous choisissez.

Les options proposées sont :

Bienvenu

- Vous pouvez sélectionner ici d'ouvrir un projet sur lequel vous avez récemment travaillé.

Ouvrir

- Vous pouvez choisir ici d'ouvrir un projet &kexi; qu'il soit enregistré dans un fichier ou sur un serveur de base de données.

Fermer

- Cette action ferme le projet &kexi; que vous avez actuellement ouvert.

Nouveau

- Vous pouvez suivre ici les directives de l'assistant pour créer un nouveau projet &kexi;.

Importer, exporter ou envoyer...

- Vous pouvez suivre ici les directives de l'assistant pour importer des données existantes dans un projet &kexi; actuellement ouvert.

Quitter

- Ferme &kexi;.

### L'onglet de création

A partir de l'onglet Créer, vous pouvez créer des objets qui seront ajoutés à votre projet.

Table

- La sélection de Table vous emmènera vers le concepteur de table dans l'affichage de conception et vous permettra d'ajouter des définitions de champs à votre table.

Requête

- La sélection de Requête vous emmènera vers le concepteur de requêtes dans l'affichage de conception. Cela vous permettra de concevoir une requête pour obtenir des résultats personnalisés à partir des tables de votre projet.

Formulaire

- La sélection de Formulaire vous amènera dans le concepteur de formulaire dans l'affichage de conception. Cela vous permettra d'ajouter des composants graphiques à votre formulaire.

Rapport

- La sélection de Rapport vous amènera dans le concepteur de rapport dans l'affichage de conception, vous permettant d'ajouter des composants graphiques à votre rapport.

Script

- La sélection de Script vous amènera dans l'éditeur de scripts. Cela vous permettra d'ajouter du code personnalisé pour votre projet et / ou vos objets.

### L'onglet de données

A partir de l'onglet Données, vous pouvez manipuler des données dans vos tables ou dans vos composants graphiques, ou même dans vos objets (formulaires, rapports, etc.)

Couper

- Couper place les données / composant graphique dans le presse-papiers et le supprime de la position courante.

Copier

- Copier place les données / composant graphique dans le presse-papiers sans les supprimer de la position courante.

Coller

- Coller place les données / composant graphique trouvé dans le presse-papiers vers la table / objet selon le cas.

Coller spécial

- Copier spécial est utilisé pour placer des données arbitraires trouvées dans le presse-papiers dans une table, d'une façon qui est prévisible afin qu'elles soient correctement ajoutées selon la définition de la table.

Chercher

- Chercher ouvre la boîte de dialogue Chercher pour chercher un texte spécifique dans les données d'une base de données.

### L'onglet de données externes

A partir de l'onglet de données externes, vous pouvez importer dans votre projet &kexi;, des données à partir d'autres sources.

Importer des données à partir d'un fichier

- Importer des données à partir d'un fichier affiche une boîte de dialogue qui vous permet d'importer des données à partir d'un fichier CSV ou de texte brut vers une nouvelle table de votre projet.

Importer des tables

- Importer des tables ouvre un Assistant d'importation de tables vous permettant d'importer des données soit à partir d'un fichier `fods`, `mdb`, `ods`, `tsv` ou d'un autre serveur de base de données vers une nouvelle table de votre projet.

Exporter des données vers un fichier

- Exporter des données vers un fichier affiche une boîte de dialogue vous permettant d'exporter les données des tables courantes vers un fichier de texte brut ou CSV.

La table doit être ouverte pour être capable d'en exporter les données vers un fichier.

### L'onglet des outils

A partir de l'onglet Outils, vous pouvez manipuler vos projets.

Compresser une base de données

- Compresser la base de données recherche des erreurs mineures dans la base de données et réduit la taille de celle-ci.

Vous devriez régulièrement compresser votre base de données pour la maintenir en bon état, en particulier, après des opérations importantes sur les enregistrements (addition en masse, suppression).

### L'onglet de conception de formulaire

A partir de l'onglet Conception de formulaire, vous pouvez sélectionner des composants graphiques pour les ajouter à votre formulaire.

Pointeur

- Pointeur permet de passer dans le mode de sélection de composants graphiques.

La sélection de n'importe quel composant graphique permettra d'entrer dans le mode d'ajout de composants graphiques. Vous pouvez alors cliquer n'importe où dans le formulaire pour y placer le composant graphique.

Étiquette

- Un composant graphique Label affiche les informations prédéfinies dans le formulaire. En général, il est utilisé comme capture, après d'autres composants graphiques de traitement de données.

Boîte de dialogue de texte

- Une Boîte de dialogue Texte est un conteneur à une seule ligne pour les données contenues dans votre table.

Éditeur de texte

- Un Éditeur de texte est un conteneur multi-ligne pour les données contenues dans votre table.

Boîte de dialogue à liste déroulante

- Une boîte de dialogue à liste déroulante affiche une liste d'option dans lesquelles choisir.

Boîte de dialogue à états

- Un Boîte de dialogue d'état traite deux ou trois états de données (&pex; Oui / Non).

Boîte de dialogue Image

- Une Boîte de dialogue Image prend en charge une image, liée à un champ de la table.

Bouton

- Un Bouton vous permet de définir des actions devant être exécutées lors d'un clic sur celui ci.

Cadre

- Un Cadre est utilisé comme conteneur pour d'autres composants graphiques.

Boîte de groupe

- Une Boîte de dialogue de groupe est utilisée pour regrouper d'autres composants graphiques et pour contrôler leurs états.

Composant graphique Onglet

- Un Composant graphique Onglet est utilisé comme un conteneur d'autres composants graphiques et peut avoir plusieurs pages contenant différents composants graphiques.

Ligne

- Une Ligne est utilisé comme un séparateur logique entre deux partie d'un formulaire.

Navigateur Internet

- Un Navigateur Internet est un composant graphique permettant d'afficher une page Internet dans un formulaire.

Assigner une action

- Assigner une action est utilisée pour assigner une action à exécuter quand un évènement se produit (&pex; clic sur un bouton).

### L'onglet de conception de rapport

Vous pouvez à partir de l'onglet Conception de Rapport sélectionner des composants graphiques à ajouter à votre rapport.

Étiquette

- Un composant graphique Label affiche les informations prédéfinies dans un rapport. En général, il est utilisé pour une capture, juste après d'autres composants graphiques traitant des données.

Champ

- Un composant graphique Champ est un conteneur à une seule ligne pour des données contenues dans votre table.

Texte

- Un composant graphique Texte est un conteneur multi-ligne pour des données contenues dans votre table.

Image

- Un composant graphique Image gère une image liée à un champ dans une table.

Vérifier

- Un composant graphique Tester gère deux ou trois état de données (&pex; Oui / Non).

Ligne

- Une Ligne est utilisé comme un séparateur logique entre deux partie d'un formulaire.

Graphique

- Un composant graphique Graphique est utilisé pour ajouter une représentation visuelle de vos données sous forme de graphique.

Internet

- Un composant graphique Internet est utilisé pour fournir un composant de navigation Internet minimal et pour imprimer vers un rapport des informations à partir d'un site local ou Internet.

Code barre

- Un composant graphique Code barre est utilisé pour créer un code barre devant être imprimé sur un rapport à partir de données contenues dans un champ.

## Annexe A. Introduction aux bases de données

- Qu'est ce qu'une base de données ?

- Base de données et feuille de calcul

- Conception de base de données

- Qui a besoin d'une base de données ?

- Logiciel de création de base de données

### Qu'est ce qu'une base de données ?

On peut définir une base de données comme un ensemble de données sur un sujet. Cet ensemble est organisé de façon à permettre facilement de parcourir les informations, les modifier ou ajouter de nouveaux éléments.

Regardez ce diagramme représentant un des exemples ci-dessus : un simple annuaire téléphonique.

L'image ci-dessus montre un ensemble de deux contacts présentés chacun sur une carte. Une telle carte peut constituer une rangée d'une table :

### La table Contacts

Nom | No. Tel
Joan | 699 23 43 12
Adam | 711 19 77 21

Termes et définitions : une donnée simple qui constitue une partir d'une collection plus grande, peut être appelée une ligne ou de façon plus professionnelle un enregistrement. La collection est en général appelée une table. De plus, le nom le plus naturel pour la table est celui décrivant les données qu'elle fournit / stockent. De plus, chaque ligne de la table est constituée de colonnes, souvent appelées aussi champs. Dans la table `Contacts`, il y a deux colonnes (champs) : Nom et No-Téléphone..

Pour des utilisations simples, une table unique peut être considérée comme une base de données. Beaucoup de personnes les considère comme équivalentes. Comme vous le verrez, pour des bases de données réelles, plus d'une table est en général nécessaire.

Pour résumer, vous avez déjà obtenu une base de données simple avec une seule table `Contacts`.

Vérifier le contenu à l'adresse

### Base de données et feuille de calcul

Il est fort probable que vous avez déjà utilisé des applications de feuilles de calcul comme Calligra Sheets, LibreOffice Calc ou &Microsoft; Excel. Si tel est la cas, vous vous demandez probablement : puisque qu'à la fois, les feuilles de calcul et les bases de données possèdent des tables, pourquoi devrais je utiliser la seconde ?

Lors d'une comparaison entre feuilles de calcul et bases de données, vous pourriez être conforté aux problèmes suivants que vous allez voir plus en détails plus tard.

#### En quoi une base de données est-elle différente d'une feuille de calcul ?

Dépassant graduellement la capacité de votre téléphone portable, agrandissez votre table `Contacts` en ajoutant une colonne (champ) `Adresse`. Ajoutez plus de numéros de téléphone (bureau, personnel) pour chaque personne et ajoutez des prénoms aux noms. Pour que cela reste plus simple, les hypothèses suivantes sont prises :

- La table est limitée à deux personnes (évidemment, il pourrait y avoir des centaines et des milliers d'entre elles dans une base de données réelle).

- Il ne peut y avoir deux personnes avec le même nom et prénom

#### La table Contacts

Nom et prénom | Tel | Adresse
Joan Smith | 699 23 43 12 | Porte Ouest 1, Varsovie
Adam Willson | 711 19 77 21 | Londres, Allées de France 5
Joan Smith | 110 98 98 00 | Western Gate 1
Smith Joan | 312 43 42 22 | Varsovie, Porte Ouest 1
ADAM Willson | 231 83 02 04 | Allée de France 5, Londres

Une telle table peut être faite dans un tableur ou une application de base de données. Utiliser un tableur est très facile, bien sûr. Mais quels sont les problèmes que l'on peut rencontrer à ce stade ?

#### Référentiel d'intégrité des données

Supposez que vous utilisiez une feuille de calcul et que vous aviez besoin de modifier l'adresse d'au moins une personne. Vous avez un petit problème : vous avez souvent à modifier l'adresse dans plusieurs lignes. Par exemple, Joan se trouve sur trois lignes. Un problème réel surviendra si vous oubliez de modifier l'une des trois ligne. L'adresse associée à cette personne sera ambiguë, d'où une perte d'intégrité pour vos données.

De plus, il n'y a aucun moyen simple de supprimer une personne donnée de la table, puisque vous devez vous retrouver toutes les lignes liées à cette personne pour les supprimer.

#### Redondance des données

Ceci est directement lié au problème précédent. Dans les champs « Nom et prénom » et « Adresse », les même données sont saisies plusieurs fois. Ceci est classique de la façon peu efficace qu'ont les feuilles de calcul d'enregistrer les données car la base de données croît inutilement, nécessitant ainsi plus de ressources de votre ordinateur (taille plus grande des données et accès plus lent).

Comment pouvez vous résoudre ces problèmes avec une base de données ? Vous pouvez séparer les informations en des morceaux plus petits en créant une table additionnelle `Personnes` possédant deux colonnes : `Nom et prénom` et `Adresse` :

#### Tables des personnes

Nom et prénom | Adresse
Joan Smith | Porte Ouest 1, Varsovie
Adam Willson | Allée de France 5, Londres

Chaque ligne dans la table `Personnes` correspond à une personne unique. La table `Contacts` est à partir de maintenant en relation avec la table `Personnes`.

#### Intégrité et validité des données

Veuillez noter la façon dont les données sont saisies dans les champs Nom et prénom et Adresse. Les personnes saisissant ces données peuvent se tromper ou même parfois être négligentes. Dans nos exemples de données, nous avons deux différentes manières pour saisir des noms et des prénoms (Joan Smith et Smith Joan, Adam et ADAM) et encore plus de manières de saisir la même adresse. Vous pouvez sûrement en imaginer bien d'autres.

Le problème ci-dessus montre, par exemple, que lors de la recherche du numéro de téléphone associé à l'adresse 4 Rue des Lilas, Paris, vous n'obtiendrez pas un résultat complet. Vous n'obtiendrez qu'une seule ligne au lieu de trois. De plus, vous ne trouverez pas aussi, les numéro de téléphone en recherchant la valeur Joan Smith dans le champ `Nom et prénom`, car Smith Joan ne correspond pas à Joan Smith.

Comme pouvez vous résoudre ces problèmes en utilisant une base de données ? Vous pouvez le faire en modifiant la conception de la table `Personnes`par :

1. Séparant les données du champ Nom et Prénom en deux champs séparés : `Nom` et `Prénom`.

2. Séparant les données du champ `Adresse` en trois champs séparés : `Rue`, `Numéro-Rue` et `Ville`.

3. Garantie sur l'exactitude des données : en vous assurant qu'il ne peut y avoir de champs vides, &pex; vous devez toujours saisir un numéro de rue.

La nouvelle version de la table ressemble à cela :

#### Tables des personnes

Nom | Nom | Rue | Numéro | Ville
Joan | Smith | Western Gate | 1 | Varsovie
Adam | Willson | Allée de France | 5 | London
Conditions
Champs requis | Champs requis | Champs requis | Champs requis | Champs requis

Grâce à l'introduction du champ de condition requis, on peut être sûr que toutes les données ont été complètement saisies. Pour d'autres tables, vous pourriez, bien sûr, permettre de ne pas remplir certains champs lors de la saisie de données.

#### Limitation de l'affichage des données

Un tableur affiche toutes les lignes et toutes les colonnes de la table, ce qui est encombrant pour de très grandes tables. Vous pouvez bien sûr filtrer et trier les lignes dans les feuilles, mais vous devrez être très soigneux. Les utilisateurs de tableurs risquent d'oublier que leur données ont été filtrées, ce qui conduire à des erreurs. Par exemple, en calculant des sommes, vous pouvez croire que vous avez 100 lignes de données alors qu'en fait il y en a 20 de plus, cachées.

Si vous voulez travailler sur une sous-ensemble réduit de données, &pex; pour l'envoyer vers d'autres personnes pour modifications, vous pouvez le copier et coller vers une autre feuille de calcul et après modifications, coller en retour les données modifiées vers la feuille de calcul initiale. Ce type de modifications manuel peut causer des pertes de données ou des calculs erronés.

Pour restreindre l'affichage des données, les applications de bases de données mettent à disposition, les requêtes, les formulaires et les rapports.

Une façon très pratique de limitation est la version étendue suivante de la table décrite précédemment `Personnes` :

#### Tables des personnes

Nom | Nom | Rue | Numéro | Ville | Revenus
Joan | Smith | Western Gate | 1 | Varsovie | 2300
Adam | Willson | Allée de France | 5 | London | 1900

Prenons l'hypothèse que la colonne nouvellement insérée « Revenus » contienne des données confidentielles. Comment pouvez vous partager &pex; les informations de contact détaillées des personnes, à vos collègues mais sans leur montrer leurs revenus ? Ceci est possible si vous partagez uniquement une requête mais pas la table complète. La requête pourra sélectionner toutes les colonnes sauf celle de « Revenus ». Dans le monde des bases de données, une telle requête est souvent dénommée une vue.

#### Performance et capacité

Votre ordinateur est probablement assez rapide, mais vous verrez facilement que cela ne suffit pas pour des feuilles de calcul grandes et lentes. Leur faible efficacité est tout d'abord due au manque d'index accélérant le processus de recherche de données (les bases de données les proposent). De plus, si vous vous servez de systèmes comme le presse-papier de votre système d'exploitation, même la copie de données peut causer des problèmes au bout d'un moment.

les feuilles de calcul contenant de grands ensembles de données peuvent prendre énormément de temps à s'ouvrir. Un tableur charge beaucoup de données dans la mémoire de l'ordinateur au cours de l'ouverture. La plus grande partie de ces données chargées en mémoire est probablement inutile pour vous à cet instant. Au contraire, les bases de données ne vont chercher les données sur le lieu de stockage de l'ordinateur que si cela est nécessaire.

Dans la plupart des cas, vous n'avez pas à vous soucier de la manière dont la base de données stocke ses données. Cela signifie que contrairement aux tableurs, les bases de données ne se préoccupent pas de :

- L'ordre des lignes, puisque vous pouvez les ordonner selon vos besoins. De plus, vous pouvez afficher les mêmes données dans différents ordres avec différentes vues.

- Cela vaut aussi pour les colonnes (champs) de la table.

En conjonction avec Limitation dans l'affichage de données décrit dans le paragraphe précédent, ces qualités constituent un avantage des bases de données.

#### Entrée des données

les plus récentes des applications pour créer des feuilles de calculs vous permettent de concevoir des formulaires d'entrée de données. De tels formulaires sont très utiles si vos données ne peuvent pas être affichées de manière convenable en mode tableau, &pex; si le texte occupe de trop nombreuses lignes ou s'il y a trop de colonnes pour les afficher toutes à l'écran.

Dans ces situations, la façon même dont les tableurs fonctionnent est problématiques. Les champs pour l'entrée des données sont placés de manière imprécise dans la feuille de calcul et très souvent ne sont pas protégés contre les interventions de l'utilisateur (intentionnelles ou accidentelles).

#### Rapports

Les bases de données permettent le regroupement, le filtrage et la compilation de données dans un formulaire de rapport. Les feuilles de calcul sont généralement imprimées dans un formulaire de petites tables, sans un contrôle automatique complet sur le découpage en pages et sur la disposition des champs.

#### Programmation

Les applications permettant de créer des bases de données comportent souvent des langages de programmation complets. Les tableurs les plus récents ont aussi cette capacité mais les actions se résument à la modification des champs de la feuille de calcul et à copier des données, sans se soucier des règles de pertinence et d'intégrité mentionnées dans les paragraphes précédents.

Dans un tableur, on manipule le plus souvent les données grâce à une interface graphique, qui peut causer des ralentissements dans ce traitement. Les bases de données sont capables de travailler un arrière-plan, sans nécessiter d'interface graphique.

#### Accès concurrent

La manipulation par plusieurs utilisateurs en même temps d'une même feuille de données paraît difficile à imaginer. Même si c'est techniquement possible dans les tableurs les plus récents, cela exige énormément de discipline et de connaissances de la part des utilisateurs, ce qu'on ne peut jamais garantir.

Un méthode classique de partage de données enregistrées dans un tableur est d'envoyer tout le fichier (habituellement par courrier électronique) ou distribuer le fichier sur un réseau. Cette façon de travailler n'est pas efficace pour de grands groupes d'utilisateurs – les données dont on a besoin à un instant donnée sont peut être verrouillées par une autre personne.

Au contraire, les concepteurs des bases de données pensaient principalement à un accès distribué entre plusieurs utilisateurs. Même les versions les plus simples peuvent verrouiller les données

#### Sécurité

Sécuriser une feuille de calcul ou une de ses parties par un mot de passe n'a qu'une activité symbolique. Après avoir fourni le fichier sur un réseau, toutes les personnes capables de copier le fichier peuvent essayer de casser la protection. Dans certains cas, c'est même relativement facile car le mot de passe est stocké dans le même fichier que la feuille de calcul.

Les fonctionnalités permettant de restreindre l'édition ou la copie d'une feuille de calcul ou d'une partie d'une feuille sont aussi faciles à contourner.

Les bases de données (à part celles enregistrées sur un fichier au lieu d'un serveur) n'ont pas besoin d'être disponibles dans un seul fichier. On y accède par un réseau informatique, le plus souvent en fournissant un nom d'utilisateur et un mot de passe. On n'a donc accès qu'aux zones (tables, formulaires, ou même seulement certaines lignes et colonnes) qui ont été assignées en choisissant des droits d'accès appropriés.

Les droits d'accès peuvent affecter la capacité d'éditer les données ou de les lire. Si une donnée n'est pas accessible, elle ne sera même pas envoyée à l'ordinateur donc ce ne sera pas possible d'en faire une copie aussi facilement qu'avec une feuille de calcul.

### Conception d'une base de données

La conception de base de données doit être soigneusement planifiée. Veuillez noter que la nouvelle conception de la table `Personnes` proposée dans la section Intégrité et validité des données peut provoquer des problèmes lors du remplissage de la table avec des données. Par exemple, le renommage d'un champ est une tâche simple mais le découpage du champ `Adresse` en des champs séparés nécessite un travail précis et fastidieux.

Pour éviter de telles situations, travailler à nouveau votre projet de base de données avant de la créer sur votre ordinateur et avant que vous ou d'autres commencent à l'utiliser. Ainsi, en passant un peu plus de temps au départ, vous pourrez probablement économiser de votre temps dans son utilisation de tous les jours.

### Qui a besoin d'une base de données ?

#### Continuez à utiliser un tableur si :

- Vos besoins sont limités et vos données ne vont jamais augmenter de manière importante (pouvez-vous réellement prédire cela maintenant ?)

- Vous êtes incapable de maîtriser les méthodes de construction de bases de données. Vous pouvez cependant demander à quelqu'un d'autre ou envisager d'utiliser un outil plus simple.

- Vous utilisez des feuilles de calcul compliquées et vous n'avez pas le temps et l'argent pour passer à des bases de données. Réfléchissez ou demandez à quelqu'un pour savoir si cela ne vous conduit pas dans une impasse. Ne comptez pas sur des outils miracles qui serait capables de transformer votre feuille de calcul (si bien faite soit elle) en une base de données.

#### Envisagez d'utiliser des bases de données si :

- Votre ensemble de données grossit chaque semaine.

- Vous créez souvent de nouvelles feuilles de calcul et copiez des données dedans, et vous trouvez ce travail de plus en plus fastidieux. Dans ce cas, l'effort de passer aux bases de données peut rapidement être rentabilisé.

- Vous créez des rapports et des comptes-rendus pour lesquels les tables d'une feuille ne sont pas adaptées. Vous pouvez alors considérer l'utilisation d'une base de données avec des formulaires.

### Logiciel de création de base de données

Pour l'instant, vous avez appris les caractéristiques générales des bases de données sans rentrer dans le détail concernant les applications pour les concevoir.

Les premières bases de données ont été construites en même temps que les énormes ordinateurs « mainframe » IBM System / 360, dans les années 1960. Ce n'était pas encore l'époque des PC, donc ces bases de données demandaient un personnel hautement spécialisé. Bien que le matériel de ces anciens ordinateurs soit peu fiable, qu'ils étaient bien plus lent et avaient moins de capacité de stockage, une possibilité offerte par les bases de données est encore maintenant très intéressante : l'accès aux données par de nombreux utilisateurs en passant par un réseau.

Dans les années 70, les scientifiques, formés à la théorie des bases de données relationnelles (des termes tels que : table, enregistrement, colonne (champ) et relation et bien d'autres). Cette théorie a permis la création des bases de données IBM DB2 et Oracle, qui ont été développées et qui sont encore utilisées aujourd'hui. A la fin des années 70, les premiers ordinateurs personnels (PC) ont été construits. Leurs utilisateurs ont pu (graduellement) utiliser de nombreux types d'applications, dont celles concernant le développement de bases de données.

Quand nous en arrivons à des bases de données importantes dans les sociétés, la situation n'a pas beaucoup changée : elles nécessitent toujours des ordinateurs performants ou des ordinateurs complexes nommés « clusters ». Cependant, ce sujet dépasse largement le sujet de ce manuel.

Parmi les bases de données accessibles intégrant des interfaces utilisateur graphiques, vous pouvez choisir parmi les suivantes :

- dBase - un outil pour mettre en œuvre des bases de données pour DOS et populaire dans les années 80. Les fichiers au format « dBase » sont encore utilisés dans des cas spécifiques en raison de leurs simplicités.

- FoxPro - une application similaire à dBase (début des années 90). Après avoir été racheté par Microsoft, les interfaces graphiques ont été ajoutées mais cependant, FoxPro n'est utilisé que pour la création de bases de données sur PC. Ce logiciel est toujours disponible, même s'il semble un peu obsolète.

- Microsoft Access – une application de bases de données (organisation des données et conception de l'interface utilisateur) avec de nombreuses simplifications, donc adaptée aux débutants, conçue à la fin des années 1980, reposant sur une architecture 16 bits. Ce produit est encore offert et très utilisé, particulièrement par de petites sociétés, pour qui l'efficacité et les exigences de gestion multi-utilisateur ne sont pas très importantes.

- FileMaker - une application populaire, similaire pour sa simplicité à MS Access, fonctionnant sur les plate-formes Windows et Macintosh et disponible depuis 1985.

- Kexi - une application multi-plate forme (&UNIX; / &Linux;, Windows, &MacOS; X) conçue en 2003, développée suivant les principes Open Source, faisant partie du projet « K Desktop Environment », &cad; un environnement graphique pour les systèmes &UNIX;/&Linux;.

## Annexe B. Comparaison de Kexi avec les autres applications de base de données

- Types de données

### Types de données

Bien que les différentes applications de base de données aient tendance à fournir les même fonctionnalités, elles utilisent souvent des terminologies différentes. Cet appendice montre comment la terminologie utilisée dans &kexi; correspond à celle utilisée par d'autres applications de base de données. Ce chapitre peut donc être utile lors de la migration de bases de données d'une application vers une autre.

Le tableau ci-dessous montre la correspondance entre les types de données de &kexi; et ceux des autres applications de base de données.

Quelques uns des types de données listés ici sont des sous-types. Par exemple, le type Long texte est un sous-type du type Texte. Pour utiliser un sous-type dans &kexi;, vous devez sélectionner le type de base correspondant (dans cet exemple, Texte) dans l'assistant de conception de table et alors sélectionner le sous-type en utilisant le paramètre Sous-type dans l'Éditeur de propriétés.

### Comparaison des types de données utilisées par Kexi et d'autres applications de base de données

&kexi; | MS Access | dBase/FoxPro | Paradox
Texte (Texte) | Texte | Caractère | Alphanumérique
Texte long( Texte long) | Mémo | Mémo | Mémo
Date/Heure (Date/Heure) | Date, Heure | Date | Date et heure
Nombre entier (Nombre entier) | Nombre (entier) | Numérique | Entier
Nombre entier long (Nombre entier long) | Entier long | Numérique | Entier long
Nombre flottant à virgule (Nombre flottant à virgule) | Nombre à précision simple/double | Flottant | Nombre

## Annexe C. Mots réservés pour SQL

Les listes ci-dessous contiennent des mots qui sont utilisés spécifiquement par &kexi; lors du traitement de sources de données.

Quand vous concevez une base de données, vous devriez faire tout votre possible pour éviter l'utilisation de mots réservés. En effet, vous pourriez rencontrer des problèmes avec votre base de données ou même la corrompre.

Si vous voulez encore utiliser des mots réservés, encadrer les avec des doubles quottes .

### Mots clé pour le pilote SQL de Kexi

Cette liste contient des mots clé, réservés pour être utilisé par le pilote SQL de Kexi :

- AFTER

- ALL

- ASC

- BEFORE

- BEGIN

- BETWEEN

- BY

- CASCADE

- CASE

- CHECK

- COLLATE

- COMMIT

- CONSTRAINT

- CROSS

- DATABASE

- DEFAULT

- DELETE

- DESC

- DISTINCT

- DROP

- END

- ELSE

- EXPLAIN

- FOR

- FOREIGN

- FULL

- GROUP

- HAVING

- IGNORE

- INDEX

- INNER

- INSERT

- INTO

- KEY

- LIMIT

- MATCH

- NATURAL

- OFFSET

- ORDER

- OUTER

- PRIMARY

- REFERENCES

- REPLACE

- RESTRICT

- ROLLBACK

- ROW

- SET

- TEMPORARY

- THEN

- TRANSACTION

- UNION

- UNIQUE

- UPDATE

- USING

- VALUES

- WHEN

### Mots clé réservés pour le pilote SQLite de Kexi :

Cette liste contient des mots clé, réservés pour être utilisé par le pilote SQLite de Kexi :

- ABORT

- ATTACH

- CLUSTER

- CONFLICT

- DEFERRED

- DEFERRABLE

- DETACH

- EACH

- EXCEPT

- FAIL

- GLOB

- IMMEDIATE

- INITIALLY

- INSTEAD

- INTERSECT

- ISNULL

- NOTNULL

- OF

- PRAGMA

- RAISE

- STATEMENT

- TEMP

- TRIGGER

- VACUUM

- VIEW

### Mots clé réservés pour le pilote MySQL de Kexi :

Cette liste contient des mots clé, réservés pour être utilisé par le pilote MySQL de Kexi :

- ACTION

- ADD

- AGAINST

- AGGREGATE

- ALTER

- ANALYZE

- ANY

- ASCII

- AUTO_INCREMENT

- AVG

- AVG_ROW_LENGTH

- BACKUP

- BDB

- BERKELEYDB

- BIGINT

- BINARY

- BINLOG

- BIT

- BLOB

- BOOL

- BOOLEAN

- BOTH

- BTREE

- BYTE

- CACHE

- CHANGE

- CHANGED

- CHAR

- CHARACTER

- CHARSET

- CHECKSUM

- CIPHER

- CLIENT

- CLOSE

- COLLATION

- COLUMN

- COLUMNS

- COMMENT

- COMMITTED

- COMPRESSED

- CONCURRENT

- CONVERT

- CUBE

- CURRENT_DATE

- CURRENT_TIME

- CURRENT_TIMESTAMP

- CURRENT_USER

- DATA

- DATABASES

- DATE

- DATETIME

- DAY

- DAY_HOUR

- DAY_MICROSECOND

- DAY_MINUTE

- DAY_SECOND

- DEALLOCATE

- DEC

- DECIMAL

- DELAYED

- DELAY_KEY_WRITE

- DESCRIBE

- DES_KEY_FILE

- DIRECTORY

- DISABLE

- DISCARD

- DISTINCTROW

- DIV

- DO

- DOUBLE

- DUAL

- DUMPFILE

- DUPLICATE

- DYNAMIC

- ENABLE

- ENCLOSED

- ENGINE

- ENGINES

- ENUM

- ERRORS

- ESCAPE

- ESCAPED

- EVENTS

- EXECUTE

- EXISTS

- EXPANSION

- EXTENDED

- FALSE

- FAST

- FIELDS

- FILE

- FIRST

- FIXED

- FLOAT

- FLOAT4

- FLOAT8

- FLUSH

- FORCE

- FULLTEXT

- FUNCTION

- GEOMETRY

- GEOMETRYCOLLECTION

- GET_FORMAT

- GLOBAL

- GRANT

- GRANTS

- HANDLER

- HASH

- HELP

- HIGH_PRIORITY

- HOSTS

- HOUR

- HOUR_MICROSECOND

- HOUR_MINUTE

- HOUR_SECOND

- IDENTIFIED

- IF

- IMPORT

- INDEXES

- INFILE

- INNOBASE

- INNODB

- INSERT_METHOD

- INT

- INT1

- INT2

- INT3

- INT4

- INT8

- INTERVAL

- IO_THREAD

- ISOLATION

- ISSUER

- KEYS

- KILL

- LAST

- LEADING

- LEAVES

- LEVEL

- LINES

- LINESTRING

- LOAD

- LOCAL

- LOCALTIME

- LOCALTIMESTAMP

- LOCK

- LOCKS

- LOGS

- LONG

- LONGBLOB

- LONGTEXT

- LOW_PRIORITY

- MASTER

- MASTER_CONNECT_RETRY

- MASTER_HOST

- MASTER_LOG_FILE

- MASTER_LOG_POS

- MASTER_PASSWORD

- MASTER_PORT

- MASTER_SERVER_ID

- MASTER_SSL

- MASTER_SSL_CA

- MASTER_SSL_CAPATH

- MASTER_SSL_CERT

- MASTER_SSL_CIPHER

- MASTER_SSL_KEY

- MASTER_USER

- MAX_CONNEXIONS_PAR_HEURE

- MAX_QUERIES_PER_HOUR

- MAX_ROWS

- MAX_UPDATES_PER_HOUR

- MEDIUM

- MEDIUMBLOB

- MEDIUMINT

- MEDIUMTEXT

- MICROSECOND

- MIDDLEINT

- MINUTE

- MINUTE_MICROSECOND

- MINUTE_SECOND

- MIN_ROWS

- MOD

- MODE

- MODIFY

- MONTH

- MULTILINESTRING

- MULTIPOINT

- MULTIPOLYGON

- NAMES

- NATIONAL

- NDB

- NDBCLUSTER

- NCHAR

- NEW

- NEXT

- NO

- NONE

- NO_WRITE_TO_BINLOG

- NUMERIC

- NVARCHAR

- OLD_PASSWORD

- ONE_SHOT

- OPEN

- OPTIMIZE

- OPTION

- OPTIONALLY

- OUTFILE

- PACK_KEYS

- PARTIAL

- PASSWORD

- POINT

- POLYGON

- PRECISION

- PREPARE

- PREV

- PRIVILEGES

- PROCEDURE

- PROCESS

- PROCESSLIST

- PURGE

- QUERY

- QUICK

- RAID0

- RAID_CHUNKS

- RAID_CHUNKSIZE

- RAID_TYPE

- READ

- REAL

- REGEXP

- RELAY_LOG_FILE

- RELAY_LOG_POS

- RELAY_THREAD

- RELOAD

- RENAME

- REPAIR

- REPEATABLE

- REPLICATION

- REQUIRE

- RESET

- RESTORE

- RETURNS

- REVOKE

- RLIKE

- ROLLUP

- ROWS

- ROW_FORMAT

- RTREE

- SAVEPOINT

- SECOND

- SECOND_MICROSECOND

- SEPARATOR

- SERIAL

- SERIALIZABLE

- SESSION

- SHARE

- SHOW

- SHUTDOWN

- SIGNED

- SIMPLE

- SLAVE

- SMALLINT

- SOME

- SONAME

- SOUNDS

- SPATIAL

- SQL_BIG_RESULT

- SQL_BUFFER_RESULT

- SQL_CACHE

- SQL_CALC_FOUND_ROWS

- SQL_NO_CACHE

- SQL_SMALL_RESULT

- SQL_THREAD

- SSL

- START

- STARTING

- STATUT

- STOP

- STORAGE

- STRAIGHT_JOIN

- STRING

- STRIPED

- SUBJECT

- SUPER

- TABLES

- TABLESPACE

- TERMINATED

- TEXTE

- TIME

- TIMESTAMP

- TINYBLOB

- TINYINT

- TINYTEXT

- TRAILING

- TRUE

- TRUNCATE

- TYPE

- TYPES

- UNCOMMITTED

- UNICODE

- UNLOCK

- UNSIGNED

- UNTIL

- USAGE

- USE

- USER

- USER_RESOURCES

- USE_FRM

- UTC_DATE

- UTC_TIME

- UTC_TIMESTAMP

- VALUE

- VARBINARY

- VARCHAR

- VARCHARACTER

- VARIABLES

- VARYING

- WARNINGS

- WITH

- WORK

- WRITE

- X509

- YEAR

- YEAR_MONTH

- ZEROFILL

### Mots clé réservés pour le pilote Postgres-SQL de Kexi :

Cette liste contient des mots clés, réservés pour être utilisé par le pilote pqxx de Kexi :

- ABORT

- ABSOLUTE

- ACCESS

- ACTION

- ADD

- AGGREGATE

- ALTER

- ANALYSE

- ANALYZE

- ANY

- ARRAY

- ASSERTION

- ASSIGNMENT

- AT

- AUTHORIZATION

- BACKWARD

- BIGINT

- BINARY

- BIT

- BOOLEAN

- BOTH

- CACHE

- CALLED

- CAST

- CHAIN

- CHAR

- CHARACTER

- CHARACTERISTICS

- CHECKPOINT

- CLASS

- CLOSE

- CLUSTER

- COALESCE

- COLUMN

- COMMENT

- COMMITTED

- CONSTRAINTS

- CONVERSION

- CONVERT

- COPY

- CREATEDB

- CREATEUSER

- CURRENT_DATE

- CURRENT_TIME

- CURRENT_TIMESTAMP

- CURRENT_USER

- CURSOR

- CYCLE

- DAY

- DEALLOCATE

- DEC

- DECIMAL

- DECLARE

- DEFAULTS

- DEFERRABLE

- DEFERRED

- DEFINER

- DELIMITER

- DELIMITERS

- DO

- DOMAIN

- DOUBLE

- EACH

- ENCODING

- CHIFFRÉ

- ESCAPE

- EXCEPT

- EXCLUDING

- EXCLUSIVE

- EXECUTE

- EXISTS

- EXTERNAL

- EXTRACT

- FALSE

- FETCH

- FIRST

- FLOAT

- FORCE

- FORWARD

- FREEZE

- FUNCTION

- GLOBAL

- GRANT

- HANDLER

- HOLD

- HOUR

- ILIKE

- IMMEDIATE

- IMMUTABLE

- IMPLICIT

- INCLUDING

- INCREMENT

- INHERITS

- INITIALLY

- INOUT

- INPUT

- INSENSITIVE

- INSTEAD

- INT

- INTERSECT

- INTERVAL

- INVOKER

- ISNULL

- ISOLATION

- LANCOMPILER

- LANGAGE

- LAST

- LEADING

- LEVEL

- LISTEN

- LOAD

- LOCAL

- LOCALTIME

- LOCALTIMESTAMP

- LOCATION

- LOCK

- MAXVALUE

- MINUTE

- MINVALUE

- MODE

- MONTH

- MOVE

- NAMES

- NATIONAL

- NCHAR

- NEW

- NEXT

- NO

- NOCREATEDB

- NOCREATEUSER

- NONE

- NOTHING

- NOTIFY

- NOTNULL

- NULLIF

- NUMERIC

- OF

- OFF

- OIDS

- OLD

- ONLY

- OPERATOR

- OPTION

- OUT

- OVERLAPS

- OVERLAY

- OWNER

- PARTIAL

- PASSWORD

- PATH

- PENDANT

- PLACING

- POSITION

- PRECISION

- PREPARE

- PRESERVE

- PRIOR

- PRIVILEGES

- PROCEDURAL

- PROCEDURE

- READ

- REAL

- RE-VÉRIFIER

- REINDEX

- RELATIVE

- RENAME

- RESET

- RESTART

- RETURNS

- REVOKE

- ROWS

- RULE

- SCHEMA

- SCROLL

- SECOND

- SECURITY

- SEQUENCE

- SERIALIZABLE

- SESSION

- SESSION_USER

- SETOF

- SHARE

- SHOW

- SIMPLE

- SMALLINT

- SOME

- STABLE

- START

- STATEMENT

- STATISTICS

- STDIN

- STDOUT

- STORAGE

- STRICT

- SUBSTRING

- SYSID

- TEMP

- TEMPLATE

- TIME

- TIMESTAMP

- TOAST

- TRAILING

- TREAT

- TRIGGER

- TRIM

- TRUE

- TRUNCATE

- TRUSTED

- TYPE

- NON-CHIFFRÉ

- UNKNOWN

- UNLISTEN

- UNTIL

- USAGE

- USER

- VACUUM

- VALID

- VALIDATOR

- VARCHAR

- VARYING

- VERBOSE

- VERSION

- VIEW

- VOLATILE

- WITH

- WITHOUT

- WORK

- WRITE

- YEAR

- ZONE

### Mots clés, réservés pour le pilote Oracle de Kexi :

Cette liste contient des mots clés, réservés pour être utilisé par le pilote Oracle de Kexi :

- ADMIN

- AFTER

- ALLOCATE

- ANALYZE

- ARCHIVE

- ARCHIVELOG

- AUTHORIZATION

- AVG

- BACKUP

- BECOME

- BEFORE

- BEGIN

- BLOCK

- BODY

- CACHE

- CANCEL

- CASCADE

- CHANGE

- CHARACTER

- CHECKPOINT

- CLOSE

- COBOL

- COMMIT

- COMPILE

- CONSTRAINT

- CONSTRAINTS

- CONTENTS

- CONTINUE

- CONTROLFILE

- COUNT

- CURSOR

- CYCLE

- DATABASE

- DATAFILE

- DATE

- DBA

- DEC

- DECLARE

- DISABLE

- DISMOUNT

- DOUBLE

- DUMP

- EACH

- ENABLE

- END

- ESCAPE

- EVENTS

- EXCEPT

- EXCEPTIONS

- EXEC

- EXECUTE

- EXPLAIN

- EXTENT

- EXTERNALLY

- FETCH

- FLUSH

- FORCE

- FOREIGN

- FORTRAN

- FOUND

- FREELIST

- FREELISTS

- FUNCTION

- GO

- GOTO

- GROUPS

- INCLUDING

- INDICATOR

- INITRANS

- INSTANCE

- INT

- KEY

- LANGAGE

- LAYER

- LINK

- LISTS

- LOGFILE

- MANAGE

- MANUAL

- MAX

- MAXDATAFILES

- MAXINSTANCES

- MAXLOGFILES

- MAXLOGHISTORY

- MAXLOGMEMBERS

- MAXTRANS

- MAXVALUE

- MIN

- MINEXTENTS

- MINVALUE

- MODULE

- MOUNT

- NEW

- NEXT

- NOARCHIVELOG

- NOCACHE

- NOCYCLE

- NOMAXVALUE

- NOMINVALUE

- NONE

- NOORDER

- NORESETLOGS

- NORMAL

- NOSORT

- NUMERIC

- OFF

- OLD

- ONLY

- OPEN

- OPTIMAL

- OWN

- PACKAGE

- PARALLEL

- PCTINCREASE

- PCTUSED

- PLAN

- PLI

- PRECISION

- PRIMARY

- PRIVATE

- PROCEDURE

- PROFILE

- QUOTA

- READ

- REAL

- RECOVER

- REFERENCES

- REFERENCING

- RESETLOGS

- RESTRICTED

- REUSE

- ROLE

- ROLES

- ROLLBACK

- SAVEPOINT

- SCHEMA

- SCN

- SECTION

- SEGMENT

- SEQUENCE

- SHARED

- SNAPSHOT

- SOME

- SORT

- SQL

- SQLCODE

- SQLERROR

- SQLSTATE

- STATEMENT_ID

- STATISTICS

- STOP

- STORAGE

- SUM

- SWITCH

- SYSTEM

- TABLES

- TABLESPACE

- TEMPORARY

- THREAD

- TIME

- TRACING

- TRANSACTION

- TRIGGERS

- TRUNCATE

- UNDER

- UNLIMITED

- UNTIL

- USE

- USING

- WHEN

- WORK

- WRITE

### Mots clés réservés pour le pilote SyBase de Kexi

Cette liste contient des mots clés, réservés pour être utilisé par le pilote SyBase de Kexi :

- ACTION

- ADD

- AGAINST

- AGGREGATE

- ALTER

- ANALYZE

- ANY

- ASCII

- AUTOINCREMENT

- AVG

- AVG_ROW_LENGTH

- BACKUP

- BDB

- BERKELEYDB

- BIGINT

- BINARY

- BINLOG

- BIT

- BLOB

- BOOL

- BOOLEAN

- BOTH

- BTREE

- BYTE

- CACHE

- CHANGE

- CHANGED

- CHAR

- CHARACTER

- CHARSET

- CHECKSUM

- CIPHER

- CLIENT

- CLOSE

- COLLATION

- COLUMN

- COLUMNS

- COMMENT

- COMMITTED

- COMPRESSED

- CONCURRENT

- CONVERT

- CUBE

- CURRENT_DATE

- CURRENT_TIME

- CURRENT_TIMESTAMP

- CURRENT_USER

- DATA

- DATABASES

- DATE

- DATETIME

- DAY

- DAY_HOUR

- DAY_MICROSECOND

- DAY_MINUTE

- DAY_SECOND

- DEALLOCATE

- DEC

- DECIMAL

- DELAYED

- DELAY_KEY_WRITE

- DESCRIBE

- DES_KEY_FILE

- DIRECTORY

- DISABLE

- DISCARD

- DISTINCTROW

- DIV

- DO

- DOUBLE

- DUAL

- DUMPFILE

- DUPLICATE

- DYNAMIC

- ENABLE

- ENCLOSED

- ENGINE

- ENGINES

- ENUM

- ERRORS

- ESCAPE

- ESCAPED

- EVENTS

- EXECUTE

- EXISTS

- EXPANSION

- EXTENDED

- FALSE

- FAST

- FIELDS

- FILE

- FIRST

- FIXED

- FLOAT

- FLOAT4

- FLOAT8

- FLUSH

- FORCE

- FULLTEXT

- FUNCTION

- GEOMETRY

- GEOMETRYCOLLECTION

- GET_FORMAT

- GLOBAL

- GRANT

- GRANTS

- HANDLER

- HASH

- HELP

- HIGH_PRIORITY

- HOSTS

- HOUR

- HOUR_MICROSECOND

- HOUR_MINUTE

- HOUR_SECOND

- IDENTIFIED

- IF

- IMPORT

- INDEXES

- INFILE

- INNOBASE

- INNODB

- INSERT_METHOD

- INT

- INT1

- INT2

- INT3

- INT4

- INT8

- INTERVAL

- IO_THREAD

- ISOLATION

- ISSUER

- KEYS

- KILL

- LAST

- LEADING

- LEAVES

- LEVEL

- LINES

- LINESTRING

- LOAD

- LOCAL

- LOCALTIME

- LOCALTIMESTAMP

- LOCK

- LOCKS

- LOGS

- LONG

- LONGBLOB

- LONGTEXT

- LOW_PRIORITY

- MASTER

- MASTER_CONNECT_RETRY

- MASTER_HOST

- MASTER_LOG_FILE

- MASTER_LOG_POS

- MASTER_PASSWORD

- MASTER_PORT

- MASTER_SERVER_ID

- MASTER_SSL

- MASTER_SSL_CA

- MASTER_SSL_CAPATH

- MASTER_SSL_CERT

- MASTER_SSL_CIPHER

- MASTER_SSL_KEY

- MASTER_USER

- MAX_CONNEXIONS_PAR_HEURE

- MAX_QUERIES_PER_HOUR

- MAX_ROWS

- MAX_UPDATES_PER_HOUR

- MEDIUM

- MEDIUMBLOB

- MEDIUMINT

- MEDIUMTEXT

- MICROSECOND

- MIDDLEINT

- MINUTE

- MINUTE_MICROSECOND

- MINUTE_SECOND

- MIN_ROWS

- MOD

- MODE

- MODIFY

- MONTH

- MULTILINESTRING

- MULTIPOINT

- MULTIPOLYGON

- NAMES

- NATIONAL

- NDB

- NDBCLUSTER

- NCHAR

- NEW

- NEXT

- NO

- NONE

- NO_WRITE_TO_BINLOG

- NUMERIC

- NVARCHAR

- OLD_PASSWORD

- ONE_SHOT

- OPEN

- OPTIMIZE

- OPTION

- OPTIONALLY

- OUTFILE

- PACK_KEYS

- PARTIAL

- PASSWORD

- POINT

- POLYGON

- PRECISION

- PREPARE

- PREV

- PRIVILEGES

- PROCEDURE

- PROCESS

- PROCESSLIST

- PURGE

- QUERY

- QUICK

- RAID0

- RAID_CHUNKS

- RAID_CHUNKSIZE

- RAID_TYPE

- READ

- REAL

- REGEXP

- RELAY_LOG_FILE

- RELAY_LOG_POS

- RELAY_THREAD

- RELOAD

- RENAME

- REPAIR

- REPEATABLE

- REPLICATION

- REQUIRE

- RESET

- RESTORE

- RETURNS

- REVOKE

- RLIKE

- ROLLUP

- ROWS

- ROW_FORMAT

- RTREE

- SAVEPOINT

- SECOND

- SECOND_MICROSECOND

- SEPARATOR

- SERIAL

- SERIALIZABLE

- SESSION

- SHARE

- SHOW

- SHUTDOWN

- SIGNED

- SIMPLE

- SLAVE

- SMALLINT

- SOME

- SONAME

- SOUNDS

- SPATIAL

- SQL_BIG_RESULT

- SQL_BUFFER_RESULT

- SQL_CACHE

- SQL_CALC_FOUND_ROWS

- SQL_NO_CACHE

- SQL_SMALL_RESULT

- SQL_THREAD

- SSL

- START

- STARTING

- STATUT

- STOP

- STORAGE

- STRAIGHT_JOIN

- STRING

- STRIPED

- SUBJECT

- SUPER

- TABLES

- TABLESPACE

- TERMINATED

- TEXTE

- TIME

- TIMESTAMP

- TINYBLOB

- TINYINT

- TINYTEXT

- TRAILING

- TRUE

- TRUNCATE

- TYPE

- TYPES

- UNCOMMITTED

- UNICODE

- UNLOCK

- UNSIGNED

- UNTIL

- USAGE

- USE

- USER

- USER_RESOURCES

- USE_FRM

- UTC_DATE

- UTC_TIME

- UTC_TIMESTAMP

- VALUE

- VARBINARY

- VARCHAR

- VARCHARACTER

- VARIABLES

- VARYING

- WARNINGS

- WITH

- WORK

- WRITE

- X509

- YEAR

- YEAR_MONTH

- ZEROFILL

### Mots réservés du pilote xBase de Kexi

Cette liste contient des mots clé, réservés pour être utilisé par le pilote xBase de Kexi :

- ABORT

- ATTACH

- CLUSTER

- CONFLICT

- DEFERRED

- DEFERRABLE

- DETACH

- EACH

- EXCEPT

- FAIL

- GLOB

- IMMEDIATE

- INITIALLY

- INSTEAD

- INTERSECT

- ISNULL

- NOTNULL

- OF

- PRAGMA

- RAISE

- STATEMENT

- TEMP

- TRIGGER

- VACUUM

- VIEW

Les mots réservés sont traités à part pour chaque pilote, pour qu'ils puissent aussi être utilisés comme référence.

## Annexe D. Formats de fichiers pris en charge

### Format de valeurs séparées par des virgules (CSV)

&kexi; est capable d'importer et d'exporter des données à partir / vers des formats variés de fichiers à valeurs séparées par des virgules (fichiers CSV). La plupart des application utilisant des feuilles de calcul ou de bases de données peuvent importer ou exporter dans ce format, en faisant un format approprié pour migrer des données textuelles entre des applications différentes.

&kexi; prend aussi en charge un nombre d'options qui peuvent être positionnées avant de réaliser l'importation :

- type de données pour chaque colonne,

- autre délimiteur de champs comme des tabulations,

- différents guillemets de texte,

- un nombre donné d'enregistrements peuvent être ignorés, si nécessaire,

- les délimiteurs dupliqués peuvent être ignorés,

- les valeurs de la première ligne peuvent être utilisées pour définir les noms de colonnes,

- encodage de texte (UTF-8 par défaut)

- format de date (la définition par défaut est celle du système d'exploitation),

- suppression des blancs en tête et dans le corps des valeurs de texte.

Durant l'importation, &kexi; montre un aperçu des données importées. L'ensemble le plus approprié d'options est détecté automatiquement par &kexi; à partir d'un fichier CSV fourni.

### Format fichier Microsoft Access (MDB)

#### Aperçu

La prise en charge de l'importation des bases de données Microsoft Access (2003 ou plus anciennes) est disponible nativement dans &kexi;. Les bases de données Access ne peuvent qu'être importées dans une base de données &kexi;. Elles ne peuvent être modifiées, ni même exporter vers une base de données Access. Cependant, il devrait aussi possible d'importer des bases de données créées par d'autres applications utilisant le moteur de base de données « JET ». L'importation de bases de données `.accdb` qui ont été introduites dans MS Access 2007 n'est pas actuellement pris en charge.

Pour importer une base de données :

1. Dans le menu de &kexi;, sélectionnez la commande Importer, Exporter ou Envoyer....

2. Cliquez sur le bouton Importer la base de données.

3. Utilisation de l'assistant d'importation en sélectionnant le fichier « mdb » désiré.

#### Possibilités

La fonction d'importation s'est terminée avec succès pour importer la base de données Northwind, bien connue des utilisateurs de MS Access. De nombreuses autres modèles de bases de données Access peuvent encore être importées.

#### Fonctionnalités prises en charge

L'importation des types de champs suivants a été testée et fonctionne bien en général :

- Champs de texte

- Champs de formulaire

- Champs de date

- Valeurs numériques

#### Fonctionnalités non prises en charge

Actuellement, seules les tables sont importées. Durant l'importation, &kexi; ne tient pas compte des objets suivants :

- Requêtes

- Formulaires

- Scripts

- Rapports

Les formats suivants ne sont pas testés :

- Importation d'objets binaires

## Remerciements et licence

Copyright 2002-2012 pour &kexi; par l'équipe de Kexi

Développeurs de Kexi :

- Jaroslaw Staniek (staniek kde.org)

- OpenOffice Pologne, LLC (info openoffice.com.pl)

- Lucijan Busch (lucijan kde.org)

- Cedric Pasteur (cedric.pasteur free.fr)

- Adam Pigg (adam piggz.fsnet.co.uk)

- Martin Ellis (martin.ellis kdemail.net)

- Sebastian Sauer (mail dipe.org)

- Christian Nitschkowski (segfault_ii web.de)

- Peter Simonsson (psn linux.se)

- Joseph Wenninger (jowenn kde.org)

- Seth Kurzenberg (seth cql.com)

- Laurent Montel (montel kde.org)

- Till Busch (till bux.at)

Documentation par Martin A. Ellis (martin.ellis kdemail.net), Jaroslaw Staniek (staniek kde.org) avec des contributions de Anne-Marie Mahfouf, Raphael Langerhorst, Michal Kubicki et Aron Stansvik.

Ce programme est publié sous licence GPL GNU Lesser General Public License.

Traduction française par Pierre Auckenthaler pierre.auckenthaler@polytechnique.org et Xavier Besnard xavier.besnard@kde.org

&underFDL;
&documentation.index;