1. Opérations de base

1-4 Créer des tables

Mécanisme de redirection

Pour des opérations comme la création d'une nouvelle table, une requête SQL peut occuper plusieurs lignes. Il est malaisé de les saisir une à une à l'invite mSQL>. C'est pourquoi il est nécessaire d'utiliser un fichier de commande, qui consiste en une ou plusieurs requêtes SQL. Celui-ci est ensuite soumis en une fois au serveur en utilisant le mécanisme de redirection. Le signe < est utilisé pour 'donner à manger' à une commande. Dans l'exemple fictif qui suit, la commande mouline va prendre comme entrée le fichier de commande mes_commandes:

mouline < mes_commandes

Le mécanisme de redirection est également utilisé pour récupérer le résultat d'une commande dans un fichier. La redirection s'exprime avec le signe >. L'exemple fictif ci-dessous sauve le résultat de la commande mouline dans un fichier resultats.txt. Voir "Backup des bases de données" à la page 11 pour un exemple concret.

mouline > resultats.txt

On crée des tables en écrivant une requête CREATE TABLE dans un fichier de commande et en appelant msql avec ce fichier en argument. La base de données pour laquelle on veut créer une table doit exister! Si ce n'est pas le cas, voir "Créer une base de données" à la page 12.

1-4.1 Fichier de commande

Voici un exemple de fichier de commandes qui sert à créer une table. (http://agora.unige.ch/msql/table-exemple.sql). Un éditeur de texte minimal suffit pour composer un tel fichier (Notepad, Simple Text). Les lignes précédées de # sont des commentaires et ne produisent aucun effet.

Les types de champ possibles sont décrits ci-dessous. Notez qu'il n'est pas impératif d'utiliser le type MONEY pour stocker des valeurs monétaires. Une chaîne de caractères CHAR ou un entier INT peuvent faire l'affaire. Néanmoins, la recherche de valeurs précises peut être facilitée par l'utilisation de ces types. Avec le type MONEY par exemple, on sait à priori que les chiffres n'auront jamais plus de deux décimales.

1-4.2 Soumettre le fichier de commande à mSQL

Pour ne pas abîmer les bases de données installées sur nos machines, une base de donnée nommée 'test' a été créée sur la machine tecfasun1. Utilisez la pour faire vos essais.

Une fois le fichier de commande terminé, lancer la commande msql avec une redirection. On donne en argument, la machine sur laquelle se trouve le serveur mSQL (-h tecfasun2), le nom de la base de données (test) et le fichier contenant les commandes SQL:


tecfasun2:bin 338) msql -h tecfasun1 test < /comm/tecfa/www/swiss-edu/msql/table-exemple.sql


Welcome to the miniSQL monitor.  Type \h for help.
mSQL >     ->     ->     ->     ->     ->     ->     ->     ->     ->     ->   ->     ->     ->     ->     ->     ->     ->     -> 
Query OK.  1 row(s) modified or retrieved.

Remarque:

Si vous obtenez des messages, d'erreur c'est que votre fichier de commande comporte une faute de syntaxe, ou que la base de données n'existe pas, ou encore que vous n'avez pas la permission de modifier cette base de données.


1-4.1 - Fichier de commande
1-4.2 - Soumettre le fichier de commande à mSQL

Memo mSQL - 27 Nov 1997

Generated with Harlequin WebMaker