Vous êtes sur la page 1sur 68

FileMaker 11

Guide ODBC et JDBC

2004-2010 FileMaker, Inc. Tous droits rservs.


FileMaker, Inc.
5201 Patrick Henry Drive
Santa Clara, California 95054, Etats-Unis
FileMaker est une marque de FileMaker, Inc., dpose aux Etats-Unis et dans d'autres pays. Le logo en forme de dossier est une marque
de FileMaker, Inc. Toutes les autres marques sont la proprit de leurs dtenteurs respectifs.
La documentation de FileMaker est protge par la lgislation sur les droits dauteur. Vous ntes pas autoris crer des copies
supplmentaires ni distribuer cette documentation sans laccord crit de FileMaker. Vous devez possder une copie sous licence
valide de FileMaker pour utiliser cette documentation.
Toutes les personnes, socits, adresses email et URL cites dans les exemples sont fictives et toute ressemblance avec des personnes
et des socits existantes ne serait que pure concidence. La liste des auteurs est disponible dans les documents Remerciements fournis
avec ce logiciel. Les produits tiers et les adresses URL sont mentionns titre indicatif uniquement, et non pas titre de recommandation.
FileMaker, Inc. se dgage de toute responsabilit concernant les performances de ces produits.
Pour plus de dtails, consultez notre site Web ladresse www.filemaker.fr.
Edition : 01

Table des matires


Chapitre 1
Introduction
A propos de ce guide
A propos d'ODBC et de JDBC
Utilisation du logiciel FileMaker comme application cliente ODBC
Importation de donnes ODBC
Ajout de tables ODBC au graphe de liens
Utilisation dune base de donnes FileMaker en tant que source de donnes
Accs une base de donnes FileMaker Pro hberge
Limites avec des outils tiers
Configuration requise pour une utilisation en rseau
Mise jour de fichiers partir de versions antrieures
Installation des pilotes actuels

7
7
8
8
8
9
9
10
10
10
10

Chapitre 2
Accs aux sources de donnes SQL externes
Importation de donnes ODBC
Excution d'instructions SQL pour interagir avec des sources de donnes via ODBC
Utilisation de tables ODBC dans le graphe de liens
Sources de donnes prises en charge dans FileMaker 11
Ajout de tables ODBC au graphe de liens

11
12
12
13
13

Chapitre 3
Installation de pilotes clients FileMaker ODBC
Configurations matrielles et logicielles requises
Configuration requise pour le pilote client ODBC (Windows)
Configuration requise pour le pilote client ODBC (Mac OS)
Configuration requise pour une utilisation en rseau
Installation du pilote client ODBC (Windows)
Configuration des pilotes clients (Windows)
Installation du pilote client ODBC (Mac OS)
Configuration des pilotes clients (Mac OS)
Etape suivante

15
15
15
15
15
16
18
18
20

Guide ODBC et JDBC FileMaker

Chapitre 4
Utilisation dODBC pour partager des donnes FileMaker
A propos dODBC
Utilisation du pilote client ODBC
Prsentation de laccs un fichier de base de donnes FileMaker
Accs un fichier de base de donnes FileMaker depuis une application Windows
Spcification des proprits de pilote client ODBC pour une source de donnes FileMaker
(Windows)
Vrification de laccs via ODBC (Windows)
Accs un fichier de base de donnes FileMaker depuis une application Mac OS
Spcification des proprits du pilote client ODBC pour une source de donnes FileMaker
(Mac OS)
Vrification de l'accs via ODBC (Mac OS)

21
22
23
23
23
25
26
26
27

Chapitre 5
Installation de pilotes clients FileMaker JDBC
Configuration logicielle requise
Configuration requise pour une utilisation en rseau
Installation du pilote client JDBC
Utilisation du pilote client JDBC

29
29
29
30

Chapitre 6
Utilisation de JDBC pour partager des donnes FileMaker
A propos de JDBC
Utilisation du pilote client JDBC
A propos du pilote client JDBC
Utilisation dune URL JDBC pour la connexion une base de donnes
Spcification des proprits du pilote dans le sous-nom de lURL
Solutions possdant plusieurs fichiers de bases de donnes FileMaker
Vrification de laccs via JDBC

31
31
32
32
34
34
35

| Table des matires

Chapitre 7
Standards pris en charge
Prise en charge des caractres Unicode
instructions SQL
SELECT, instruction
clauses SQL
Clause FROM
Clause WHERE
Clause GROUP BY
Clause HAVING
Oprateur UNION
Clause ORDER BY
Clause FOR UPDATE
DELETE
INSERT
UPDATE
CREATE TABLE
ALTER TABLE
CREATE INDEX
DROP INDEX, instruction
Fonctions statistiques SQL
Expressions SQL
Noms de rubriques
Constantes
Notification en virgule flottante/scientifique
Oprateurs numriques
Oprateurs de caractres
Oprateurs de dates
Oprateurs relationnels
Oprateurs logiques
Fonctions
Fonctions qui renvoient des chanes de caractres
Fonctions qui renvoient des nombres
Fonctions qui renvoient des dates
Ordre de priorit des oprateurs
Fonctions de catalogue ODBC
Fonctions de mtadonnes JDBC
Mots-cls SQL rservs

37
37
37
38
39
39
40
40
40
41
41
44
44
45
46
47
47
48
49
49
49
50
51
51
51
51
52
53
53
54
55
56
57
57
58
58

Guide ODBC et JDBC FileMaker

Chapitre 8
Informations de rfrence
Correspondances entre les rubriques FileMaker et les types de donnes ODBC
Correspondances entre les rubriques FileMaker et les types de donnes JDBC
Messages derreur ODBC et JDBC
Messages derreur ODBC
Messages derreur JDBC

61
62
62
62
63

Index

65

Chapitre 1
Introduction
Ce guide dcrit comment utiliser le logiciel FileMaker en tant qu'application cliente ODBC et en tant que
source de donnes pour des applications ODBC et JDBC.
Le tableau suivant donne un aperu de lutilisation dODBC et de JDBC avec le logiciel FileMaker.
Que voulez-vous faire ?

Comment le faire ?

1 Utiliser le logiciel FileMaker

Produit

1. De faon interactive via le graphe de


liens
2. Unique, statique via importation ODBC
1 Accder des donnes ODBC ou menu Fichier > Ouvrir. Egalement,
laction de script Importer enregistrements
stockes dans une source de
et laction de script Excuter SQL.
donnes SQL externe.

1
1
1
1

1 Utiliser une base de donnes

1 FileMaker Pro
1 FileMaker Pro Advanced
1 FileMaker Server Advanced

comme application cliente


ODBC.

FileMaker en tant que


source de donnes

1. Requtes SQL
2. ODBC et JDBC

1 Partager des donnes


FileMaker Pro avec une
application cliente ODBC
tierce.

FileMaker Pro
FileMaker Pro Advanced
FileMaker Server
FileMaker Server Advanced

Consultez le
document

1 Ce guide,
chapitre 2.

1 Aide
FileMaker
Pro
Ce guide,
chapitres 3 8.

uniquement

A propos de ce guide
1 Pour plus dinformations sur lutilisation dODBC et de JDBC avec les versions antrieures de
FileMaker Pro, consultez le site www.filemaker.fr/support/product/documentation.html.

1 Ce guide part de lhypothse que vous tes familiaris avec les principes dutilisation de base dODBC
et de JDBC et de construction de requtes SQL. Pour plus dinformations, consultez un livre spcialis.

1 Ce guide parle indiffremment de FileMaker Pro pour faire rfrence FileMaker Pro et FileMaker
Pro Advanced, sauf quand il dcrit des fonctions propres FileMaker Pro Advanced.
Remarque Vous pouvez tlcharger la version PDF de la documentation de FileMaker ladresse suivante :
www.filemaker.fr/support/product/documentation.html. Toutes les mises jour de ce document sont
galement disponibles sur le site Web.

A propos d'ODBC et de JDBC


ODBC et JDBC sont des interfaces de programmation dapplications (API). ODBC est une API pour les
applications rdiges en langage C et JDBC est l'API quivalente pour le langage Java. Ces API offrent aux
applications clientes un langage commun pour communiquer avec une multitude de sources de donnes et
de services de base de donnes, notamment FileMaker Pro et FileMaker Server Advanced.
Toutes les applications prenant en charge ODBC et JDBC reconnaissent un sous-ensemble commun
dinstructions SQL (Structured Query Language). Avec SQL, vous pouvez utiliser dautres applications
(telles que des tableurs, des traitements de texte et des outils de gnration de rapports) pour afficher,
analyser et modifier des donnes.

Guide ODBC et JDBC FileMaker

Avec les API ODBC et JDBC, une application cliente communique avec un gestionnaire de pilotes
qui identifie le pilote client permettant de communiquer avec une source de donnes.
Application
cliente

Gestionnaire
de pilotes

Client
Pilote

Client
Pilote

Le logiciel FileMaker peut faire office d'application cliente ou de source de donnes.

Utilisation du logiciel FileMaker comme application cliente ODBC


En tant qu'application cliente ODBC, le logiciel FileMaker peut accder aux donnes de sources de donnes
SQL externes. Le logiciel FileMaker se connecte la source de donnes SQL externe l'aide du pilote client
correspondant la source de donnes ODBC, puis importe les donnes ODBC ou utilise les tables ODBC
dans le graphe de liens.

Importation de donnes ODBC


Vous pouvez importer des donnes ODBC selon l'une des mthodes suivantes :

1 depuis le menu Fichier en prcisant une source de donnes ODBC et en saisissant des instructions SQL
dans la bote de dialogue Gnrateur de requte SQL de FileMaker Pro ;

1 en crant un script FileMaker utilisant l'action de script Importer enregistrements ou l'action de script
Excuter SQL.
Quelle que soit la mthode choisie, vous devez saisir les instructions SQL vous-mme. Il convient donc de
connatre les instructions SQL prises en charge ainsi que leur syntaxe pour votre source de donnes ODBC.
Puisque vous rdigez les instructions SQL vous-mme, vous pouvez importer des donnes ODBC depuis
n'importe quelle source de donnes ODBC.

Ajout de tables ODBC au graphe de liens


Lorsque vous ajoutez une table ODBC au graphe de liens, vous pouvez vous connecter des sources
de donnes SQL externes et les utiliser peu prs de la mme faon que vous travaillez avec les donnes
du fichier de base de donnes FileMaker actif. Par exemple, vous pouvez :

1 crer des tables dans le graphe de liens pour des sources de donnes ODBC ;
1 ajouter des rubriques supplmentaires aux tables ODBC pour excuter des calculs non stocks ou pour
effectuer un rcapitulatif des donnes des tables ODBC ;

1 ajouter, modifier et supprimer des donnes externes de manire interactive ;


1 crer des liens entre les rubriques des tables FileMaker et les rubriques (ou colonnes ) des tables ODBC.
Puisque FileMaker Pro gnre des instructions SQL utilises pour communiquer avec une table ODBC
ajoute au graphe de liens, vous tes limit aux sources de donnes Oracle, SQL Server et MySQL
spcifiques prises en charge par FileMaker Pro dans le graphe de liens.
Remarque Vous ne pouvez pas modifier le schma de sources de donnes ODBC externes l'aide de
FileMaker Pro.
Le Chapitre 2, Accs aux sources de donnes SQL externes dcrit comment utiliser le logiciel FileMaker
comme application cliente ODBC.

Chapitre 1

Introduction

Utilisation dune base de donnes FileMaker en tant que source de


donnes
En tant que source de donnes, les donnes FileMaker sont partages avec des applications compatibles
ODBC et JDBC. L'application se connecte la source de donnes FileMaker l'aide du pilote client
FileMaker, cre et excute les requtes SQL l'aide d'ODBC ou de JDBC et traite les donnes rcupres
dans la solution de base de donnes FileMaker.

Accs une base de donnes FileMaker Pro hberge


Avec FileMaker Server Advanced ou FileMaker Pro, vous pouvez hberger un fichier de base de donnes
FileMaker en tant que source de donnes et partager vos donnes avec dautres applications laide
dODBC et de JDBC. Le tableau suivant dcrit les possibilits offertes par chaque produit FileMaker.
Ce produit FileMaker

Permet

FileMaker Server Advanced

Jusqu 50 connexions et prend en charge laccs local (mme ordinateur) et laccs distant
(pour les systmes intermdiaires tels que les serveurs Web et pour laccs aux clients distants
partir dapplications de bureautique).

FileMaker Pro

Jusqu neuf connexions et ne prend en charge que laccs local (mme ordinateur).

Si votre solution de base de donnes FileMaker utilise plusieurs fichiers de base de donnes FileMaker,
tous ces fichiers devront tre enregistrs sur le mme ordinateur.
Les modules ODBC et JDBC dont vous avez besoin pour partager vos donnes avec dautres applications
sont installs avec FileMaker Server Advanced et FileMaker Pro.
Pour accder un fichier de base de donnes FileMaker hberg, vous devez installer le pilote client ODBC
ou JDBC correspondant. Installez le pilote client sur l'ordinateur o est installe lapplication tierce.
Ce guide explique comment les pilotes clients ODBC et JDBC utiliss avec FileMaker Pro et
FileMaker Server Advanced prennent en charge les standards de lindustrie pour ODBC (Open Database
Connectivity), JDBC (Java Database Connectivity) et SQL (Structured Query Language).

1 Le Chapitre 3, Installation de pilotes clients FileMaker ODBC explique comment installer les fichiers
de pilote ncessaires pour accder une source de donnes FileMaker l'aide d'ODBC.

1 Le chapitre Chapitre 4, Utilisation dODBC pour partager des donnes FileMaker dcrit comment
utiliser le pilote client FileMaker ODBC pour se connecter une source de donnes FileMaker partir
dune autre application.

1 Le Chapitre 5, Installation de pilotes clients FileMaker JDBC explique comment installer les fichiers
de pilote ncessaires pour accder une source de donnes FileMaker l'aide de JDBC.

1 Le Chapitre 6, Utilisation de JDBC pour partager des donnes FileMaker dcrit comment utiliser
le pilote client FileMaker JDBC avec une application ou une applet Java qui se connecte une source
de donnes FileMaker.

10

Guide ODBC et JDBC FileMaker

1 Le Chapitre 7, Standards pris en charge dcrit les instructions SQL que les pilotes clients ODBC
et JDBC prennent en charge quand ils sont utiliss avec FileMaker Pro et FileMaker Server Advanced.
Important Si vous dsactivez le partage ODBC/JDBC aprs lavoir activ, une source de donnes hberge
par FileMaker ServerAdvanced ou FileMaker Pro cesse immdiatement dtre disponible. Ladministrateur
de base de donnes na pas la possibilit davertir les applications clientes ODBC et JDBC quant la disponibilit
de la source de donnes (il ne peut communiquer quavec des clients de fichiers de base de donnes FileMaker).
Aucune erreur nest signale et lapplication cliente doit avertir les utilisateurs que la source de donnes nest
plus disponible et que les transactions ne peuvent pas tre effectues. Si une application cliente tente de se
connecter un fichier de base de donnes FileMaker qui nest pas disponible, un message explique que la
connexion a chou.

Limites avec des outils tiers


Microsoft Access : Lorsque vous utilisez Microsoft Access pour afficher les donnes d'une source de
donnes FileMaker, n'utilisez pas les donnes d'une rubrique statistique. Les donnes des rubriques de type
Statistique ne doivent pas tre modifies dans Microsoft Access et la valeur des donnes affiche dans
Microsoft Access peut tre incorrecte.

Configuration requise pour une utilisation en rseau


Vous devez disposer dun rseau TCP/IP pour utiliser FileMaker Server Advanced pour hberger un fichier
de base de donnes FileMaker en tant que source de donnes par lintermdiaire dun rseau. FileMaker Pro
ne prend en charge que laccs local (mme ordinateur).

Mise jour de fichiers partir de versions antrieures


Installation des pilotes actuels
Si vous avez install un pilote depuis les versions prcdentes de FileMaker Pro ou FileMaker Server
Advanced, vous devez installer le pilote pour la version 11.
Le pilote pour FileMaker version 11 n'est pas compatible avec les versions antrieures de FileMaker Pro
et FileMaker Server Advanced.
Pour plus d'informations sur l'installation des pilotes, consultez le chapitre 3, Installation de pilotes clients
FileMaker ODBC et le chapitre 5, Installation de pilotes clients FileMaker JDBC .
Remarque Vous devez crer un nom de source de donnes pour chaque fichier de base de donnes
FileMaker auquel vous souhaitez accder en tant que source de donnes. Si vous avez dj configur un
accs via un nom de source de donnes qui admet que les tables soient situes dans diffrents fichiers de
base de donnes FileMaker, vous devez consolider ces tables sous la forme dun fichier de base de donnes
unique (ou crer plusieurs sources de donnes).

Chapitre 2
Accs aux sources de donnes SQL externes
En tant qu'application cliente ODBC, le logiciel FileMaker peut accder aux donnes de sources de donnes
SQL externes. Le logiciel FileMaker se connecte la source de donnes SQL externe l'aide du pilote client
correspondant la source de donnes ODBC, puis importe les donnes ODBC ou utilise les tables ODBC
dans le graphe de liens.
Que vous importiez des donnes ODBC ou que vous utilisiez des tables ODBC dans le graphe de liens, vous
devez configurer un pilote pour la source de donnes ODBC que vous utilisez. Par exemple, pour accder
aux enregistrements dune base de donnes Oracle, vous devez configurer un pilote client Oracle.

Importation de donnes ODBC


Lorsque vous importez des donnes ODBC, vous devez configurer un pilote client ODBC pour la source
de donns SQL externe sur l'ordinateur client.

FileMaker
Pro

Gestionnaire
de pilotes

Client
Pilote

Donnes SQL
Source

Aprs avoir configur un pilote client ODBC, vous pouvez interagir avec les enregistrements, importer
des enregistrements dans un fichier de base de donnes FileMaker Pro existant ou crer un nouveau fichier
de base de donnes FileMaker Pro partir d'une source de donnes ODBC (telle quune base de donnes
Oracle ou Microsoft Access).
Vous commencez par accder la source de donnes partir de laquelle vous souhaitez effectuer l'importation.
Puis vous crez une requte pour les enregistrements importer depuis la source de donnes. Enfin, si vous
importez des donnes dans un fichier existant, vous mettez en correspondance les rubriques de votre source
de donnes avec celles de votre fichier de base de donnes FileMaker Pro.
Vous pouvez accder votre source de donnes ODBC depuis le menu Fichier, l'aide de l'action de script
Importer enregistrements ou de l'action de script Excuter SQL.
Pour importer des donnes ODBC, appliquez le processus gnral suivant :

1 Installez et configurez des pilotes ODBC spcifiques aux sources de donnes externes auxquelles vous
souhaitez accder.

1 Sur l'ordinateur hbergeant le fichier FileMaker Pro actif, dfinissez un nom de source de donnes
systme pour chaque source de donnes ODBC laquelle vous souhaitez accder.

1 Dterminez ventuellement des considrations supplmentaires pour les sources de donnes ODBC
auxquelles vous souhaitez accder (par exemple, dcidez si les utilisateurs sont invits saisir un nom
d'utilisateur et un mot de passe).

12

Guide ODBC et JDBC FileMaker

1 Dans FileMaker Pro, effectuez lune des oprations suivantes :


1 Pour importer dans un fichier FileMaker Pro existant, choisissez le menu Fichier > Importer des
enregistrements > Source de donnes ODBC.

1 Pour crer un fichier FileMaker Pro partir des enregistrements de la source de donnes, choisissez
le menu Fichier > Ouvrir. Dans la bote de dialogue Ouvrir fichier, choisissez Source de donnes
ODBC dans la zone Fichiers de type (Windows) ou Afficher (Mac OS).
Choisissez votre source de donnes, saisissez le nom d'utilisateur et le mot de passe (le cas chant),
puis cliquez sur OK pour ouvrir la bote de dialogue Gnrateur de requte SQL de FileMaker Pro.
La bote de dialogue Gnrateur de requte SQL de FileMaker Pro vous permet de crer une requte.
Slectionnez la table partir de laquelle vous souhaitez effectuer l'importation, puis slectionnez les
colonnes prcises utiliser dans votre requte SQL. Utilisez l'onglet WHERE pour crer des critres
de recherche et l'onglet ORDER BY pour prciser un ordre de tri.
Vous pouvez galement entrer une instruction SQL directement dans la bote de dialogue Gnrateur
de requte SQL.
Vous pouvez excuter la requte immdiatement ou utiliser l'action de script Importer enregistrements
ou Excuter SQL pour excuter une requte dans le cadre d'un script FileMaker.
Remarque L'importation ODBC, l'action de script Excuter SQL et les sources de donnes SQL externes
ne sont pas prises en charge dans les solutions d'excution cres avec FileMaker Pro Advanced.
Consultez l'aide de FileMaker Pro pour plus d'informations sur l'importation de donnes, l'utilisation
de la bote de dialogue Gnrateur de requte SQL et la cration de scripts FileMaker.

Excution d'instructions SQL pour interagir avec des sources de donnes


via ODBC
Outre l'importation de donnes dans un fichier de base de donnes FileMaker Pro via ODBC, vous pouvez
galement interagir avec les sources de donnes l'aide d'instructions SQL grce l'action de script
Excuter SQL. Vous pouvez utiliser n'importe quelle instruction SQL prise en charge par la source de
donnes, telle que INSERT, UPDATE et DELETE.
Il vous est galement possible d'utiliser des instructions SQL permettant d'effectuer d'autres oprations que
la simple importation de donnes dans un fichier de base de donnes FileMaker Pro. Par exemple, vous
pouvez excuter des instructions SQL pour ajouter des enregistrements une table de base de donnes dans
SQL Server en utilisant les informations dun fichier de base de donnes FileMaker Pro.
Consultez l'aide de FileMaker Pro pour plus d'informations sur la cration de scripts FileMaker utilisant l'action
de script Excuter SQL.

Utilisation de tables ODBC dans le graphe de liens


Lorsque vous ajoutez une table ODBC au graphe de liens, vous pouvez vous connecter des sources de
donnes SQL externes et les utiliser peu prs de la mme faon que vous travaillez avec les donnes du fichier
de base de donnes FileMaker actif.

Chapitre 2

Accs aux sources de donnes SQL externes

13

Lorsque vous utilisez FileMaker Pro ou FileMaker Server comme hte d'une solution incluant des tables ODBC
dans le graphe de liens, vous devez configurer le pilote client ODBC pour la source de donnes SQL externe sur
l'ordinateur hte.

FileMaker
Pro, utilisateur

FileMaker
Pro, utilisateur

FileMaker Pro
ou
FileMaker
Server,
ordinateur hte

Gestionnaire
de pilotes

Client
Pilote

Donnes SQL
Source

FileMaker
Pro, utilisateur

Sources de donnes prises en charge dans FileMaker 11


En tant qu'application cliente ODBC, FileMaker prend en charge les sources de donnes SQL externes
suivantes comme tables ODBC dans le graphe de liens :

1
1
1
1
1
1
1
1

Oracle 9i
Oracle 10g
Oracle 11g
SQL Server 2000
SQL Server 2005
SQL Server 2008
MySQL 5,0 Community Edition (gratuit)
MySQL 5.1 Community Edition (gratuit)

Pour plus d'informations sur les pilotes clients pris en charge, consultez le site www.filemaker.fr/support/
technologies.

Ajout de tables ODBC au graphe de liens


Pour configurer une base de donnes FileMaker Pro afin qu'elle puisse accder aux donnes des sources
de donnes ODBC prises en charge :

1 Installez et configurez des pilotes ODBC spcifiques aux sources de donnes externes auxquelles vous
souhaitez accder.

1 Sur l'ordinateur hbergeant le fichier FileMaker Pro actif, dfinissez un nom de source de donnes
systme pour chaque source de donnes ODBC laquelle vous souhaitez accder.

1 Dterminez ventuellement des considrations supplmentaires pour les sources de donnes ODBC
auxquelles vous souhaitez accder (par exemple, dcidez si les utilisateurs sont invits saisir un nom
d'utilisateur et un mot de passe).

14

Guide ODBC et JDBC FileMaker

1 Ajoutez une ou plusieurs tables de la source de donnes ODBC dans le graphe de liens du fichier
FileMaker Pro actif.

1 Ajoutez des rubriques aux modles du fichier FileMaker Pro pour afficher les donnes externes.
1 Si vous le souhaitez, ajoutez des rubriques complmentaires aux tables externes et aux modles pour
afficher les rsultats des calculs et des rcapitulatifs bass sur les donnes stockes dans les sources
de donnes ODBC externes.
Consultez l'aide de FileMaker Pro pour obtenir des tapes dtailles et des informations supplmentaires
sur la configuration d'un pilote client ODBC, la connexion aux sources de donnes ODBC, la modification
des sources de donnes ODBC et la configuration d'une table ODBC dans le graphe de liens.

Chapitre 3
Installation de pilotes clients FileMaker ODBC
Ces instructions vous aident installer le pilote client ODBC ncessaire pour accder FileMaker en tant que
source de donnes depuis des applications tierces et personnalises via ODBC (Open Database Connectivity).
Le pilote client ODBC est disponible sur votre CD-ROM d'installation de FileMaker pour une installation
distincte ou peut tre tlcharg par voie lectronique dans le dossier xDBC.
Les dernires versions des pilotes clients sont galement disponibles l'adresse suivante :
www.filemaker.fr/support/technologies

Si vous devez hberger un fichier de base de donnes FileMaker laide de FileMaker Server Advanced,
mettez les pilotes clients la disposition des utilisateurs distants.
Aprs avoir install le pilote client requis, vous pouvez configurer le pilote pour accder une source de donnes
FileMaker et construire des requtes SQL (Structured Query Language) pour interagir avec les donnes.

Configurations matrielles et logicielles requises


Pour installer et utiliser les pilotes clients ODBC, vous devez tre quip au minimum du matriel et des
logiciels suivants :

Configuration requise pour le pilote client ODBC (Windows)


1 Pentium III 700 MHz ou plus rapide
1 256 Mo de RAM minimum, 2 Go de RAM recommands pour Windows XP ; 1 Go de RAM minimum
pour Windows Vista et Windows 7

1 Microsoft Data Access Components (MDAC) 2.8 SP1


1 Windows MDAC 6.0 pour Vista

Configuration requise pour le pilote client ODBC (Mac OS)


1 Apple G4 ou G5 ; ou ordinateur Mac OS quip d'un processeur Intel
1 1 Go de RAM minimum ; 2 Go de RAM recommands
1 Mac OS X version 10.5.7 ou 10.6 (le logiciel peut aussi fonctionner avec des versions plus rcentes
certifies par FileMaker)

Configuration requise pour une utilisation en rseau


Si vous devez accder une source de donnes FileMaker hberge sur un autre ordinateur, vous devez
disposer dun accs rseau via TCP/IP.

Installation du pilote client ODBC (Windows)


Remarque Vous devez disposer de MDAC 2.8 SP1 (disponible sur www.microsoft.com) pour installer
le pilote client ODBC sur un systme d'exploitation Windows 32 bits.

16

Guide ODBC et JDBC FileMaker

Pour installer le pilote client ODBC


1. Effectuez lune des oprations suivantes :

1 Si vous avez reu le logiciel par voie lectronique, double-cliquez sur l'icne d'installation (fichier .exe).
1 Si vous disposez d'un disque d'installation, insrez-le dans le lecteur.
2. Dans la fentre FileMaker Pro ou FileMaker Server, double-cliquez sur le dossier xDBC.
3. Dans le dossier xDBC, double-cliquez sur le dossier du programme ODBC Client Driver Installer.
4. Dans le dossier du programme ODBC Client Driver Installer, double-cliquez sur le fichier
FMODBC_Installer_Win32.msi.
L'Assistant Configuration du pilote ODBC FileMaker s'ouvre.
5. Installez le pilote client ODBC en suivant les instructions affiches lcran.
6. Lorsque vous avez termin linstallation, cliquez sur Fermer.
Par dfaut, le pilote client ODBC est install dans le dossier suivant :
c:\windows\system32
Le pilote client ODBC, FileMaker ODBC, est dsormais disponible pour configurer laccs une source
de donnes FileMaker.

Configuration des pilotes clients (Windows)


Avant dutiliser une application cliente pour accder une source de donnes FileMaker, vous devez configurer
un pilote client pour la source de donnes. Les paramtres de configuration identifient le pilote client que vous
utilisez, lemplacement de la source de donnes et la manire dont vous souhaitez vous connecter.
Important Lorsque vous utilisez un pilote client FileMaker, vous devez rserver le port 2399.
Pour configurer le pilote client ODBC :
1. Dans le Panneau de configuration de Windows, ouvrez Outils dadministration > Sources de donnes (ODBC).

1 Sous Windows XP, loption Outils dadministration apparat dans la catgorie Performances
et maintenance.

1 Sous Windows Vista et Windows 7, l'option Outils d'administration apparat dans la catgorie
Systme et scurit.
L'Administrateur de sources de donnes ODBC s'ouvre.
2. Slectionnez l'onglet Sources de donnes systme ou Sources de donnes utilisateur.
3. Cliquez sur Ajouter.
La bote de dialogue Crer une nouvelle source de donnes s'ouvre.
4. Slectionnez FileMaker ODBC, puis cliquez sur Terminer.
La bote de dialogue Configuration DSN FileMaker s'ouvre.
5. Cliquez sur Suivant.

Chapitre 3

Installation de pilotes clients FileMaker ODBC

17

6. Dans la zone Nom, entrez un nom aisment identifiable par les autres utilisateurs accdant la source
de donnes FileMaker Pro. Dans Description, entrez, si vous le souhaitez, une description de la source
de donnes FileMaker. Cliquez sur Suivant.
7. Dans Hte :

1 Si vous vous connectez un fichier de base de donnes hberg par FileMaker Pro sur votre ordinateur
local, tapez localhost ou l'adresse IP 127.0.0.1.

1 Si vous vous connectez un fichier de base de donnes hberg par FileMaker Server Advanced
par lintermdiaire dun rseau, tapez ladresse IP du serveur FileMaker.
Si vous avez activ le partage via ODBC/JDBC dans l'application hte, vous pouvez slectionner
Connectez-vous l'hte pour obtenir les noms des bases disponibles. Cliquez sur Suivant.
Dans le cas contraire, cliquez sur Terminer pour enregistrer les informations de votre source de donnes.
8. Pour Base de donnes, slectionnez une base de donnes dans la liste des bases de donnes disponibles
ou tapez le nom de fichier de la base de donnes utilise comme source de donnes.
Remarque Pour les bases de donnes hberges par FileMaker Server Advanced, vous pouvez filtrer
la liste des bases de donnes sur le paramtre Filtre d'affichage du fichier. Pour plus d'informations,
consultez l'Aide de FileMaker Server.
Si vous avez besoin d'un traitement spcial rserv aux caractres autres qu'anglais, cliquez sur Langue
avance. La bote de dialogue Options de langue avances s'ouvre.

1 Pour dtecter automatiquement les paramtres de langue, slectionnez l'option Dtectez auto.
paramtres de langue pour application.

1 Pour prciser le paramtre de langue, dcochez l'option Dtectez auto. paramtres de langue pour
application et slectionnez le paramtre systme utiliser.
Si vous souhaitez crer un fichier journal pour les requtes dont l'excution est longue, slectionnez
l'option Enregistrez requtes longues dans fichier journal, puis entrez le nom du fichier journal.
Cliquez sur Terminer pour enregistrer les informations de votre source de donnes.
9. Vrifiez les informations relatives votre DSN FileMaker.

1 Cliquez sur Test pour vrifier que vous avez correctement configur le pilote client ODBC pour

l'accs la source de donnes FileMaker.


Si vous obtenez un message d'erreur, vous pouvez corriger les informations de connexion.
Vous devrez peut-tre galement vrifier que le fichier de base de donnes FileMaker est hberg
et disponible, que le compte FileMaker indiqu utilise un jeu de privilges Accs via ODBC/JDBC
et que l'application hte (FileMaker Pro ou FileMaker Server Advanced) a t configure pour
le partage via ODBC/JDBC.

1 Cliquez sur Termin pour enregistrer les informations de votre source de donnes.

18

Guide ODBC et JDBC FileMaker

Installation du pilote client ODBC (Mac OS)


Pour installer le pilote client ODBC
1. Effectuez lune des oprations suivantes :

1 Si vous avez reu le logiciel par voie lectronique, double-cliquez sur l'icne d'image disque (fichier .dmg).
1 Si vous disposez d'un disque d'installation, insrez-le dans le lecteur.
2. Dans la fentre FileMaker Pro ou FileMaker Server, double-cliquez sur le dossier xDBC.
3. Dans le dossier xDBC, double-cliquez sur le dossier du programme ODBC Client Driver Installer.
4. Dans le dossier du programme ODBC Client Driver Installer, double-cliquez sur le fichier FileMaker
ODBC.mpkg.
Le programme d'installation du pilote FileMaker ODBC s'ouvre.
5. Installez le pilote client ODBC en suivant les instructions affiches lcran.
6. Lorsque vous avez termin linstallation, cliquez sur Fermer.
Le pilote client ODBC est install dans le dossier suivant :
/Bibliothque/ODBC
Remarque Vous ne pouvez pas modifier le dossier d'installation du pilote client ODBC.
Le pilote client ODBC, FileMaker ODBC, est dsormais disponible pour configurer laccs une source
de donnes FileMaker.

Configuration des pilotes clients (Mac OS)


Avant dutiliser une application cliente pour accder une source de donnes FileMaker, vous devez configurer
un pilote client pour la source de donnes. Les paramtres de configuration identifient le pilote client que vous
utilisez, lemplacement de la source de donnes et la manire dont vous souhaitez vous connecter.
Ces instructions supposent que vous avez install ODBC Manager d'Actual Technologies, disponible
l'adresse www.odbcmanager.net, logiciel gratuit non pris en charge par FileMaker.
Vous pouvez galement utiliser l'outil d'administration ODBC d'Apple pour Mac OS X. Pour Mac OS X
version 10.5, l'administrateur ODBC est intgr au systme d'exploitation. Pour Mac OS X version 10.6,
l'administrateur ODBC est disponible sur le site www.apple.com/support.
Important Lorsque vous utilisez un pilote client FileMaker, vous devez rserver le port 2399.
Pour configurer le pilote client ODBC :
1. Lancez l'utilitaire ODBC Manager. (ODBC Manager est install dans le dossier Utilitaires du dossier
Applications.)
2. Slectionnez l'onglet DSN systme ou DSN utilisateur, puis cliquez sur Ajouter.
La bote de dialogue de slection d'un pilote s'ouvre.

Chapitre 3

Installation de pilotes clients FileMaker ODBC

19

3. Slectionnez FileMaker ODBC, puis cliquez sur OK.


La bote de dialogue Configuration DSN FileMaker s'ouvre.
4. Cliquez sur Continuer.
5. Dans la zone Nom, entrez un nom aisment identifiable par les autres utilisateurs accdant la source
de donnes FileMaker Pro. Dans Description, entrez, si vous le souhaitez, une description de la source
de donnes FileMaker. Cliquez sur Continuer.
6. Dans Hte :

1 Si vous vous connectez un fichier de base de donnes hberg par FileMaker Pro sur votre ordinateur
local, tapez localhost ou l'adresse IP 127.0.0.1.

1 Si vous vous connectez un fichier de base de donnes hberg par FileMaker Server Advanced
par lintermdiaire dun rseau, tapez ladresse IP du serveur FileMaker.
Si vous avez activ le partage via ODBC/JDBC dans l'application hte, vous pouvez slectionner
Connectez-vous l'hte pour obtenir les noms des bases disponibles. Cliquez sur Continuer.
Dans le cas contraire, cliquez sur Terminer pour enregistrer les informations de votre source de donnes.
7. Pour Base de donnes, slectionnez une base de donnes dans la liste des bases de donnes disponibles
ou tapez le nom de fichier de la base de donnes utilise comme source de donnes.
Remarque Pour les bases de donnes hberges par FileMaker Server Advanced, vous pouvez filtrer
la liste des bases de donnes sur le paramtre Filtre d'affichage du fichier. Pour plus d'informations,
consultez l'Aide de FileMaker Server.
Si vous avez besoin d'un traitement spcial rserv aux caractres autres qu'anglais, cliquez sur Langue
avance. La bote de dialogue Options de langue avances s'ouvre.

1 Pour dtecter automatiquement les paramtres de langue, slectionnez l'option Dtectez auto.
paramtres de langue pour application.

1 Pour prciser le paramtre de langue, dcochez l'option Dtectez auto. paramtres de langue pour
application et slectionnez le paramtre systme utiliser.
Si vous souhaitez crer un fichier journal pour les requtes dont l'excution est longue, slectionnez
l'option Enregistrez requtes longues dans fichier journal, puis entrez le nom du fichier journal.
Cliquez sur Terminer pour enregistrer les informations de votre source de donnes.
8. Vrifiez les informations relatives votre DSN FileMaker.

1 Cliquez sur Test pour vrifier que vous avez correctement configur le pilote client ODBC pour

l'accs la source de donnes FileMaker.


Si vous obtenez un message d'erreur, vous pouvez corriger les informations de connexion.
Vous devrez peut-tre galement vrifier que le fichier de base de donnes FileMaker est hberg
et disponible, que le compte FileMaker indiqu utilise un jeu de privilges Accs via ODBC/JDBC
et que l'application hte (FileMaker Pro ou FileMaker Server Advanced) a t configure pour
le partage via ODBC/JDBC.

1 Cliquez sur Termin pour enregistrer les informations de votre source de donnes.

20

Guide ODBC et JDBC FileMaker

Etape suivante
Aprs avoir install et configur un pilote client, vous pouvez construire et excuter des requtes SQL pour
accder une source de donnes FileMaker.
Les applications clientes emploient parfois une terminologie diffrente pour laccs une source de donnes
via ODBC. De nombreuses applications contiennent des lments de menu portant des noms tels que
Obtenir des donnes externes ou Requte SQL. Pour plus de dtails, consultez la documentation ou laide
fournies avec votre application.
Pour plus d'informations sur l'utilisation de FileMaker en tant que source de donnes ODBC, consultez
le chapitre 4, Utilisation dODBC pour partager des donnes FileMaker .

Chapitre 4
Utilisation dODBC pour partager des donnes
FileMaker
Utilisez le pilote client ODBC pour vous connecter une source de donnes FileMaker partir dune autre
application. Lapplication qui utilise le pilote client ODBC peut accder directement aux donnes dun
fichier de base de donnes FileMaker.
Le pilote client FileMaker ODBC est FileMaker ODBC.
Remarque Vous pouvez galement utiliser FileMaker Pro en tant quapplication cliente ODBC et la faire
interagir avec les enregistrements dune autre source de donnes via ODBC laide de SQL. Consultez
le chapitre 2, Accs aux sources de donnes SQL externes pour plus de dtails sur l'accs une source
de donnes SQL externe via ODBC.

A propos dODBC
ODBC est une API qui permet aux applications daccder des donnes provenant de divers systmes
de gestion de bases de donnes. ODBC donne aux applications clientes un langage commun permettant
dinteragir avec des sources de donnes et des services de base de donnes.
Toutes les applications prenant en charge ODBC reconnaissent un sous-ensemble commun d'instructions
SQL (Structured Query Language). SQL permet dutiliser dautres applications (telles que des tableurs, des
traitements de texte et des outils de gnration de rapports) pour afficher, analyser et modifier des donnes
FileMaker. Pour connatre les instructions, fonctions et expressions SQL prises en charge par le pilote client
ODBC, consultez la rubrique chapitre 7, Standards pris en charge .
Votre application peut communiquer directement avec un fichier de base de donnes FileMaker en utilisant le
pilote client ODBC. Les instructions SQL sont transmises lhte FileMaker du fichier de base de donnes et
les rponses vous sont ensuite communiques. Si vous utilisez FileMaker Server Advanced pour hberger un
fichier de base de donnes en tant que source de donnes, le fichier de base de donnes peut tre situ sur une
autre machine (la machine serveur) connecte au rseau, votre application cliente tant place sur votre machine
(la machine cliente). Il sagit dune configuration client/serveur.

22

Guide ODBC et JDBC FileMaker

Application
cliente

Gestionnaire
de pilotes

Oracle
Pilote ODBC

Pilote ODBC
SQL Server

Pilote client
FileMaker
ODBC

Oracle

Microsoft
SQL Server

FileMaker

Utilisation du pilote client ODBC


Vous pouvez utiliser le pilote client ODBC avec nimporte quelle application compatible ODBC.
En partageant votre fichier de base de donnes FileMaker en tant que source de donnes, vous pouvez :

1
1
1
1

effectuer des fusions-publipostages avec Microsoft Word ;


crer des graphiques avec Microsoft Excel ;
dplacer des donnes FileMaker vers un SGBD tel que Microsoft SQL Server ;
analyser vos donnes FileMaker laide doutils de requte ou de gnration de rapports pour crer
des graphiques, dfinir des requtes personnalises et effectuer des analyses avec recherche dantcdents ;

1 crer une application Microsoft Visual Basic partageant des informations avec FileMaker Pro.
Pour partager un fichier de base de donnes FileMaker en tant que source de donnes, utilisez FileMaker Pro
pour dfinir les comptes qui auront besoin daccder au fichier de base de donnes. Ensuite, contrlez
laccs au fichier de base de donnes en affectant des jeux de privilges aux comptes, notamment le privilge
tendu Accs via ODBC/JDBC. Enfin, activez le partage de donnes via ODBC/JDBC sur lapplication hte
FileMaker Server Advanced ou FileMaker Pro. Pour plus dinformations, consultez laide de FileMaker Pro
ou de FileMaker Server.
Important Les versions antrieures du pilote client FileMaker ODBC ne sont pas compatibles avec
FileMaker version 11. Pour vous connecter un fichier de base de donnes FileMaker version 11,
vous devez installer et configurer le nouveau pilote client ODBC.
Remarque Vous pouvez utiliser le Moniteur dactivit sous Mac OS ou le Gestionnaire des tches sous
Windows pour vrifier ltat du processus du port d'coute FileMaker xDBC afin de confirmer que ce port
d'coute est en cours dexcution. Une fois le processus lanc, il prend le nom fmxdbc_listener et les
vnements sont consigns sous ce nom. Le processus du port d'coute FileMaker xDBC est distinct du
processus FileMaker Server.

Chapitre 4

Utilisation dODBC pour partager des donnes FileMaker

23

Prsentation de laccs un fichier de base de donnes FileMaker


A partir dune application compatible ODBC, vous pouvez construire des requtes SQL pour accder
un fichier de base de donnes FileMaker. Le pilote client ODBC doit tre install sur lordinateur qui gnre
la requte SQL.
Pour accder un fichier de base de donnes FileMaker :
1. Dans FileMaker Pro, vrifiez les jeux de privilges que vous avez affects aux comptes qui accderont
au fichier de base de donnes.
Les comptes qui ont besoin dun accs doivent employer un jeu de privilges incluant le privilge tendu
Accs via ODBC/JDBC.
2. Activez le partage de donnes via ODBC/JDBC sur lapplication hte FileMaker Server Advanced
(via la console Admin de FileMaker Server) ou FileMaker Pro.
Console Admin de FileMaker Server : cliquez sur ODBC/JDBC , puis slectionnez Activer ODBC/JDBC.
FileMaker Pro : choisissez le menu Fichier > Partage > ODBC/JDBC et paramtrez loption Partage
ODBC/JDBC sur Activ.
3. Assurez-vous que le fichier de base de donnes FileMaker auquel vous voulez accder est hberg et
disponible.
Si votre solution de base de donnes FileMaker utilise plusieurs fichiers de base de donnes FileMaker,
tous ces fichiers devront tre enregistrs sur le mme ordinateur.
4. Connectez-vous la source de donnes FileMaker.
5. Crez et excutez une requte SQL dans lapplication cliente.
Chaque fichier de base de donnes FileMaker ouvert et configur pour laccs constitue une source de
donnes distincte (vous devez crer une source de donnes pour chaque fichier de donnes FileMaker
auquel vous souhaitez accder en tant que source de donnes).
Chaque base de donnes peut contenir une ou plusieurs tables. Les rubriques FileMaker sont reprsentes
sous forme de colonnes. Le nom complet de la rubrique, avec les caractres non alphanumriques quil
contient ventuellement, saffiche en tant que nom de colonne.

Accs un fichier de base de donnes FileMaker depuis une application


Windows
Spcification des proprits de pilote client ODBC pour une source de donnes FileMaker
(Windows)
Crez une source de donnes pour chaque fichier de base de donnes FileMaker auquel vous souhaitez
accder en tant que source de donnes. La source de donnes identifie le pilote client ODBC FileMaker,
lemplacement de lapplication hte FileMaker et le fichier de base de donnes FileMaker auquel vous
accdez en tant que source de donnes.
Pour configurer un nouveau pilote client ODBC, consultez la section Configuration des pilotes clients
(Windows) , page 16.

24

Guide ODBC et JDBC FileMaker

Pour modifier un pilote client ODBC existant :


1. Dans le Panneau de configuration de Windows, ouvrez Outils dadministration > Sources de donnes (ODBC).

1 Sous Windows XP, loption Outils dadministration apparat dans la catgorie Performances et
maintenance.

1 Sous Windows Vista et Windows 7, l'option Outils d'administration apparat dans la catgorie
Systme et scurit.
L'Administrateur de sources de donnes ODBC s'ouvre.
2. Slectionnez l'onglet Sources de donnes systme ou Sources de donnes utilisateur (slectionnez
l'onglet utilis lors de la prcdente configuration).
3. Slectionnez la source de donnes FileMaker que vous avez configure prcdemment.
Le nom que vous aviez entr pour la source de donne apparat sous Nom et FileMaker ODBC apparat
sous Pilote.
4. Cliquez sur Configurer.
La bote de dialogue Configuration DSN FileMaker s'ouvre.
5. Dans la zone Nom, entrez un nom aisment identifiable par les autres utilisateurs accdant la source
de donnes FileMaker Pro. Dans Description, entrez, si vous le souhaitez, une description de la source
de donnes FileMaker. Cliquez sur Suivant.
6. Pour Hte, entrez lemplacement de votre source de donnes.
Si vous vous connectez un fichier de base de donnes FileMaker hberg par FileMaker Pro sur votre
machine locale, tapez localhost (ou 127.0.0.1).
Si vous vous connectez un fichier de base de donnes FileMaker hberg par FileMaker Server
Advanced par lintermdiaire dun rseau, tapez ladresse IP du serveur FileMaker.
Si vous avez activ le partage via ODBC/JDBC dans l'application hte, slectionnez Connectez-vous
l'hte pour obtenir les noms des bases disponibles.
7. Pour Base de donnes, slectionnez une base de donnes dans la liste des bases de donnes disponibles
ou tapez le nom de fichier de la base de donnes utilise comme source de donnes.
Remarque Pour les bases de donnes hberges par FileMaker Server Advanced, vous pouvez filtrer
la liste des bases de donnes sur le paramtre Filtre d'affichage du fichier. Pour plus d'informations,
consultez l'Aide de FileMaker Server.
Si vous avez besoin d'un traitement spcial rserv aux caractres autres qu'anglais, cliquez sur Langue
avance. La bote de dialogue Options de langue avances s'ouvre.

1 Pour dtecter automatiquement les paramtres de langue, slectionnez l'option Dtectez auto.
paramtres de langue pour application.

1 Pour prciser le paramtre de langue, dcochez l'option Dtectez auto. paramtres de langue pour
application et slectionnez le paramtre systme utiliser.
Si vous souhaitez crer un fichier journal pour les requtes dont l'excution est longue, slectionnez
l'option Enregistrez requtes longues dans fichier journal, puis entrez le nom du fichier journal.

Chapitre 4

Utilisation dODBC pour partager des donnes FileMaker

25

8. Cliquez sur Terminer pour enregistrer les informations de votre source de donnes.
9. Cliquez sur Termin pour fermer la bote de dialogue Configuration DSN FileMaker.

Vrification de laccs via ODBC (Windows)


Pour vrifier que vous avez configur correctement le pilote client ODBC pour accder la source
de donnes FileMaker :
1. Dans le Panneau de configuration de Windows, ouvrez Outils dadministration > Sources de donnes (ODBC).

1 Sous Windows XP, loption Outils dadministration apparat dans la catgorie Performances
et maintenance.

1 Sous Windows Vista et Windows 7, l'option Outils d'administration apparat dans la catgorie
Systme et scurit.
L'Administrateur de sources de donnes ODBC s'ouvre.
2. Slectionnez l'onglet Sources de donnes systme ou Sources de donnes utilisateur (slectionnez
l'onglet utilis lors de la prcdente configuration).
3. Slectionnez la source de donnes FileMaker que vous avez configure prcdemment.
Le nom que vous aviez entr pour la source de donne apparat sous Nom et FileMaker ODBC apparat
sous Pilote.
4. Cliquez sur Configurer.
La bote de dialogue Configuration DSN FileMaker s'ouvre.
5. Cliquez sur Suivant jusqu' la page Conclusion.
6. Cliquez sur Test.
Le systme vous demande dentrer un nom de compte FileMaker (dans Database User Name (Nom
dutilisateur de base de donnes)) et un mot de passe (dans Database Password (Mot de passe de base
de donnes)).
Si la connexion fonctionne correctement, le message Russite du test saffiche.
Si la connexion choue :

1 Assurez-vous que le fichier de base de donnes FileMaker est hberg et disponible.


1 Mettez jour ou corrigez vos informations de connexion.
1 Assurez-vous que votre compte FileMaker emploie un jeu de privilges incluant le privilge tendu
Accs via ODBC/JDBC.

1 Vrifiez que lapplication hte FileMaker Pro ou FileMaker Server a t configure pour partager
des fichiers via ODBC/JDBC.

26

Guide ODBC et JDBC FileMaker

Accs un fichier de base de donnes FileMaker depuis une application


Mac OS
Spcification des proprits du pilote client ODBC pour une source de donnes FileMaker
(Mac OS)
Crez une source de donnes pour chaque fichier de base de donnes FileMaker auquel vous souhaitez
accder en tant que source de donnes. La source de donnes identifie le pilote client ODBC FileMaker,
lemplacement de lapplication hte FileMaker et le fichier de base de donnes FileMaker auquel vous
accdez en tant que source de donnes.
Pour configurer un nouveau pilote client ODBC, consultez la section Configuration des pilotes clients
(Mac OS) , page 18.
Pour modifier un pilote client ODBC existant :
1. Lancez l'utilitaire ODBC Manager. (ODBC Manager est install dans le dossier Utilitaires du dossier
Applications.)
2. Cliquez sur l'onglet DNS systme ou DNS utilisateur.
3. Slectionnez la source de donnes FileMaker que vous avez configure prcdemment.
Le nom que vous aviez entr pour la source de donne apparat sous Nom et FileMaker ODBC apparat
sous Pilote.
4. Cliquez sur Configurer.
La bote de dialogue Configuration DSN FileMaker s'ouvre.
5. Cliquez sur Continuer.
6. Dans la zone Nom, entrez un nom aisment identifiable par les autres utilisateurs accdant la source
de donnes FileMaker Pro.
Vous pouvez dcrire cette source de donnes dans la zone facultative Description (Description).
7. Pour Hte, entrez lemplacement de votre source de donnes.
Si vous vous connectez un fichier de base de donnes FileMaker hberg par FileMaker Pro sur votre
machine locale, tapez localhost (ou 127.0.0.1).
Si vous vous connectez un fichier de base de donnes FileMaker hberg par FileMaker Server
Advanced par lintermdiaire dun rseau, tapez ladresse IP du serveur FileMaker.
Si vous avez activ le partage via ODBC/JDBC dans l'application hte, slectionnez Connectez-vous
l'hte pour obtenir les noms des bases disponibles.
8. Pour Base de donnes, slectionnez une base de donnes dans la liste des bases de donnes disponibles
ou tapez le nom de fichier de la base de donnes utilise comme source de donnes.
Remarque Pour les bases de donnes hberges par FileMaker Server Advanced, vous pouvez filtrer
la liste des bases de donnes sur le paramtre Filtre d'affichage du fichier. Pour plus d'informations,
consultez l'Aide de FileMaker Server.

Chapitre 4

Utilisation dODBC pour partager des donnes FileMaker

27

Si vous avez besoin d'un traitement spcial rserv aux caractres autres qu'anglais, cliquez sur Langue
avance. La bote de dialogue Options de langue avances s'ouvre.

1 Pour dtecter automatiquement les paramtres de langue, slectionnez l'option Dtectez auto.
paramtres de langue pour application.

1 Pour prciser le paramtre de langue, dcochez l'option Dtectez auto. paramtres de langue pour
application et slectionnez le paramtre systme utiliser.
Si vous souhaitez crer un fichier journal pour les requtes dont l'excution est longue, slectionnez
l'option Enregistrez requtes longues dans fichier journal, puis entrez le nom du fichier journal.
9. Cliquez sur Terminer pour enregistrer les informations de votre source de donnes.
10. Cliquez sur Termin pour fermer la bote de dialogue Configuration DSN FileMaker.

Vrification de l'accs via ODBC (Mac OS)


Pour vrifier que vous avez configur correctement le pilote client ODBC pour accder la source de
donnes FileMaker :
1. Lancez l'utilitaire ODBC Manager. (ODBC Manager se trouve dans le dossier Utilitaires du dossier
Applications.)
2. Slectionnez l'onglet Sources de donnes systme ou Sources de donnes utilisateur (slectionnez
l'onglet utilis lors de la prcdente configuration).
3. Slectionnez la source de donnes FileMaker que vous avez configure prcdemment.
Le nom que vous aviez entr pour la source de donne apparat sous Nom et FileMaker ODBC apparat
sous Pilote.
4. Cliquez sur Configurer.
La bote de dialogue Configuration DSN FileMaker s'ouvre.
5. Cliquez sur Continuer pour vrifier nouveau la page Conclusion.
6. Cliquez sur Test.
Le systme vous demande dentrer un nom de compte FileMaker (dans Database User Name (Nom
dutilisateur de base de donnes)) et un mot de passe (dans Database Password (Mot de passe de base
de donnes)).
Si la connexion fonctionne correctement, le message Russite du test saffiche.
Si la connexion choue :

1 Assurez-vous que le fichier de base de donnes FileMaker est hberg et disponible.


1 Mettez jour ou corrigez vos informations de connexion.
1 Assurez-vous que votre compte FileMaker emploie un jeu de privilges incluant le privilge tendu
Accs via ODBC/JDBC.

1 Vrifiez que lapplication hte FileMaker Pro ou FileMaker Server a t configure pour partager
des fichiers via ODBC/JDBC.

28

Guide ODBC et JDBC FileMaker

Chapitre 5
Installation de pilotes clients FileMaker JDBC
Ces instructions vous aident installer le pilote client ncessaire pour accder FileMaker en tant que
source de donnes depuis des applications tierces et personnalises via JDBC (Java Database Connectivity).
Le pilote client est disponible dans le dossier xDBC du DVD-ROM de FileMaker ou du tlchargement
lectronique. Les dernires versions des pilotes clients sont galement disponibles l'adresse suivante :
www.filemaker.fr/support/technologies

Si vous devez hberger un fichier de base de donnes FileMaker laide de FileMaker Server Advanced,
mettez les pilotes clients la disposition des utilisateurs distants.
Aprs avoir install le pilote client requis, vous pouvez configurer le pilote pour accder une source de donnes
FileMaker et construire des requtes SQL (Structured Query Language) pour interagir avec les donnes.
Le pilote client JDBC est la partie du logiciel FileMaker qui permet des applications tierces ou
personnalises daccder aux fichiers FileMaker en tant que sources de donnes JDBC.

Configuration logicielle requise


Pour installer et utiliser les pilotes clients JDBC, vous devez disposer de JDK 1.4 ou une version ultrieure.
Pour savoir quelle version de Java vous excutez, ouvrez une fentre de commande (Windows) ou une
fentre Terminal (Mac OS) et tapez java -version.

Configuration requise pour une utilisation en rseau


Si vous devez accder une source de donnes FileMaker hberge sur un autre ordinateur, vous devez
disposer dun accs rseau via TCP/IP.

Installation du pilote client JDBC


Vous devez disposer dun accs en criture sur le dossier dinstallation du pilote client JDBC.
Pour installer le pilote client JDBC
1. Effectuez lune des oprations suivantes :

1 Windows : Si vous avez reu le logiciel par voie lectronique, double-cliquez sur l'icne d'installation
(fichier .exe).

1 Mac OS : Si vous avez reu le logiciel par voie lectronique, double-cliquez sur l'icne d'image disque
(fichier .dmg).

1 Si vous disposez d'un disque d'installation, insrez-le dans le lecteur.


2. Dans la fentre FileMaker Pro ou FileMaker Server, double-cliquez sur le dossier xDBC.
3. Dans le dossier xDBC, double-cliquez sur le dossier du programme JDBC Client Driver Installer.

30

Guide ODBC et JDBC FileMaker

4. Copiez le fichier fmjdbc.jar dans le dossier appropri pour votre systme d'exploitation :

1 Windows : Copiez le fichier fmjdbc.jar dans le dossier contenant votre fichier excutable Java
(java.exe) ou dans un autre dossier inclus dans l'lment ClassPath de votre application Java.

1 Mac OS : Copiez le fichier fmjdbc.jar dans le dossier /Bibliothque/Java/Extensions ou dans un autre


dossier inclus dans l'lment ClassPath de votre application Java.
Le pilote client JDBC est dsormais disponible pour accder une source de donnes FileMaker.

Utilisation du pilote client JDBC


Votre application ou applet Java doit enregistrer le pilote client JDBC dans le gestionnaire de pilotes JDBC
et vous devez spcifier lURL JDBC correcte partir de lapplication ou de lapplet.
Important Vous devez rserver le port 2399 pour le pilote de client FileMaker JDBC. Le numro de port
est toujours 2399. Vous ne pouvez pas faire passer le partage JDBC par un autre port.
Pour plus d'informations sur l'utilisation du pilote client JDBC, consultez le chapitre 6, Utilisation de
JDBC pour partager des donnes FileMaker .

Chapitre 6
Utilisation de JDBC pour partager des donnes
FileMaker
Si vous programmez en Java, vous pouvez employer le pilote client JDBC avec nimporte quel outil RAD
(Rapid Application Development) pour crer visuellement une application ou une applet Java qui se connecte
une source de donnes FileMaker. Lapplication ou applet Java qui utilise le pilote client JDBC peut accder
directement aux donnes dun fichier de base de donnes FileMaker.

A propos de JDBC
JDBC est une API (Application Programming Interface) Java qui permet dexcuter des instructions SQL
(Structured Query Language), langage standard daccs aux bases de donnes relationnelles. JDBC est un nom
et non un acronyme, bien quil soit possible de croire quil signifie Java Database Connectivity puisquil est
lquivalent dODBC pour Java. JDBC est une interface de bas niveau, ce qui signifie quil est utilis pour
appeler directement les commandes SQL. Il sert galement de base pour des interfaces et outils de haut niveau.
Votre applet ou application Java peut communiquer directement avec un fichier de base de donnes
FileMaker en utilisant le pilote client JDBC. Les instructions SQL sont transmises lhte FileMaker du
fichier de base de donnes et les rponses vous sont ensuite communiques. Si vous utilisez FileMaker Server
pour lhbergement, le fichier de base de donnes que vous employez en tant que source de donnes peut
tre situ sur une autre machine (la machine serveur) connecte au rseau, votre applet ou application cliente
Java tant place sur votre machine (la machine cliente). Il sagit dune configuration client/serveur.

application Java
Pilote JDBC

Ordinateur client

FileMaker

Serveur de bases de
donnes

Utilisation du pilote client JDBC


Vous pouvez utiliser le pilote client JDBC avec un compilateur Java ou un outil RAD pour vous connecter
la base de donnes pendant la cration du code de lapplication ou de lapplet Java. Une fois lapplication
ou lapplet Java cre, le pilote client JDBC doit accompagner les fichiers ou tre inclus dans le code pour
que lapplication ou lapplet puisse communiquer avec la base de donnes.
Pour utiliser le pilote client JDBC, votre application ou applet Java doit enregistrer le pilote dans le
gestionnaire de pilotes JDBC et vous devez spcifier lURL JDBC correcte partir de lapplication ou
de lapplet. LURL JDBC est ncessaire pour se connecter la base de donnes.

32

Guide ODBC et JDBC FileMaker

A propos du pilote client JDBC


Le pilote client JDBC prend partiellement en charge la spcification JDBC 3.0. Les fonctions suivantes
ne sont pas prises en charge par FileMaker :

1
1
1
1
1
1
1
1

Prise en charge de Savepoint


Extraction des cls gnres automatiquement
Transmission des paramtres vers un objet dinstruction dappel par nom
Prise en charge du curseur persistant
Extraction et mise jour de lobjet rfrenc par un objet Ref
Mise jour des colonnes contenant des types de donnes CLOB, ARRAY et REF
Type de donnes boolen
Type de donnes DATALINK

1 Transformation des groupes et correspondance de types


1 Relation entre le SPI JDBC et larchitecture Connector
Pour plus dinformations, consultez le site www.filemaker.fr/support/technologies.
Le pilote client JDBC a t test par rapport au JDK (Java Development Kit) 1.5 (Mac OS) et 1.6 (Windows).
Il sagit dun pilote de type 4, cest--dire dun pilote de protocole natif purement Java qui convertit
directement les appels JDBC dans le protocole de rseau utilis par FileMaker. Ce type de pilote offre tous
les avantages de Java, y compris linstallation automatique (par exemple, le tlchargement du pilote JDBC
avec lapplet qui lutilise).
La classe (et point daccs principal) du pilote est nomme :
com.filemaker.jdbc.Driver
Important Le pilote client JDBC remplace le pilote JDBC FileMaker fourni avec une version antrieure
de FileMaker. Si vous avez dj configur laccs une source de donnes FileMaker laide de lancien
pilote, vous devez redfinir laccs en utilisant et en configurant le nouveau pilote.
Remarque Vous pouvez utiliser le Moniteur dactivit sous Mac OS ou le Gestionnaire des tches sous
Windows pour vrifier ltat du processus du port d'coute FileMaker xDBC afin de confirmer que ce
port d'coute est en cours dexcution. Une fois le processus lanc, il prend le nom fmxdbc_listener et
les vnements sont consigns sous ce nom. Le processus du port d'coute FileMaker xDBC est distinct
du processus FileMaker Server.

Utilisation dune URL JDBC pour la connexion une base de donnes


En langage Java, laccs la plupart des ressources seffectue par le biais dURL (Uniform Resource Locator).
Une URL JDBC sert identifier la base de donnes afin que le pilote client JDBC puisse la reconnatre et
sy connecter.
LURL JDBC est constitue de trois lments principaux, spars par le signe deux-points :
jdbc:<sous-protocole>:<sous-nom>
La premire partie de lURL JDBC est toujours le protocole JDBC ( jdbc ). Le sous-protocole est le nom
du pilote ou le mcanisme prenant en charge plusieurs pilotes. Pour le pilote client JDBC, le sous-protocole
est filemaker. Le sous-nom est ladresse IP de la machine qui hberge la source de donnes FileMaker.

Chapitre 6

Utilisation de JDBC pour partager des donnes FileMaker

Enregistrement du pilote client JDBC et connexion une source de donnes FileMaker (exemple)
Vous trouverez ci-dessous un extrait de code dune application cliente JDBC qui :
1. Enregistre le pilote client JDBC auprs du gestionnaire de pilotes JDBC.
2. Etablit une connexion avec la source de donnes FileMaker. L'URL JDBC est
jdbc:filemaker://192.168.1.1/database
3. renvoie des codes derreur.
import java.sql.*
class FMPJDBCTest
{
public static void main(String[ ] args)
{
// enregistrement du pilote client JDBC
try {
Driver d =
(Driver)Class.forName("com.filemaker.jdbc.Driver").newInstance();
} catch(Exception e) {
System.out.println(e);
}
// tablissement dune connexion avec FileMaker
Connection con;
try {
con = DriverManager.getConnection("jdbc:filemaker://192.168.1.1/mabasedonnes","nomutilisateur",
"motdepasse");
} catch (Exception e) {
System.out.println(e);
}
// gnreration des avertissements de connexion
SQLWarning warning = null;
try {
warning = con.getWarnings();
if (warning == null) {
System.out.println("Aucun avertissement");
return;
}
while (warning != null) {
System.out.println("Avertissement : +warning);
warning = warning.getNextWarning();
}
} catch (Exception e) {
Sysem.out.println(e);

33

34

Guide ODBC et JDBC FileMaker

}
}
}

Remarque Cet exemple nest pas destin tre compil.

Spcification des proprits du pilote dans le sous-nom de lURL


Indiquez les proprits dutilisateur et de mot de passe du pilote dans le sous-nom de lURL JDBC. Il sagit
des mmes proprits que celles qui pouvaient tre transfres la connexion en invoquant la mthode
DriverManager.getConnection laide du paramtre Properties.

1 user : compte du fichier de base de donnes FileMaker qui emploie un jeu de privilges avec le privilge
tendu Accs via ODBC/JDBC

1 password : mot de passe du compte du fichier de base de donnes FileMaker


Connexion lURL JDBC avec le nom de la base de donnes spcifie dans lURL
Format :
jdbc:filemaker://<adresse IP de lhte filemaker>/<nombasedonnes>
Exemple :
jdbc:filemaker://192.168.1.1/publications
Connexion lURL JDBC avec le nom de la base de donnes, le nom dutilisateur et le mot de passe spcifis dans
lURL
Format :
jdbc:filemaker://<adresse IP de lhte filemaker>/
<nombasedonnes>?user=<nomutilisateurbasedonnes>&password=<motpassebasedonnes>
Exemple :
jdbc:filemaker://192.168.1.1/customers?user=Collections&password=admin
Remarque Etant donn l'utilisation du caractre "et" commercial (&) dans cette syntaxe, vous ne pouvez pas
utiliser de symbole "et" commercial dans le nom d'utilisateur ou le mot de passe.
Exemple de nom d'utilisateur incorrect :
jdbc:filemaker://localhost/sales_db?user=ad&min&password=admin
Exemple de mot de passe incorrect :
jdbc:filemaker://localhost/sales_db?user=admin1&password=ad&min

Solutions possdant plusieurs fichiers de bases de donnes FileMaker


Si votre solution de base de donnes FileMaker utilise de nombreux fichiers de base de donnes FileMaker,
crez un fichier de base de donnes supplmentaire contenant toutes les rfrences ncessaires de sources
de donnes externes, doccurrences de tables et de liens. Dfinissez ensuite ce fichier de base de donnes
supplmentaire en tant que source de donnes dans lURL JDBC. Tous les fichiers de base de donnes
FileMaker doivent tre enregistrs sur le mme ordinateur.

Chapitre 6

Utilisation de JDBC pour partager des donnes FileMaker

35

Vrification de laccs via JDBC


Pour vrifier laccs un fichier de base de donnes FileMaker via JDBC, assurez-vous que :

1 Le fichier de base de donnes FileMaker est hberg et disponible.


1 Votre compte FileMaker emploie un jeu de privilges incluant le privilge tendu Accs via ODBC/JDBC.
1 Lapplication hte FileMaker Pro ou FileMaker Server Advanced a t configure pour partager des
fichiers via ODBC/JDBC.
Pour partager un fichier de base de donnes FileMaker en tant que source de donnes, utilisez
FileMaker Pro pour dfinir les comptes qui auront besoin daccder au fichier de base de donnes.
Ensuite, contrlez laccs au fichier de base de donnes en affectant des jeux de privilges aux comptes,
notamment le privilge tendu Accs via ODBC/JDBC. Enfin, activez le partage de donnes via ODBC/
JDBC sur lapplication hte FileMaker Server Advanced ou FileMaker Pro. Pour plus dinformations,
reportez-vous lAide de FileMaker Pro.

1 Lenregistrement du pilote client JDBC et lURL JDBC sont corrects (le pilote peut tre inclus dans
lapplication Java ou situ sur la machine cliente).
Pour plus dinformations sur lutilisation de JDBC pour partager les donnes FileMaker, consultez le site
www.filemaker.fr/support/technologies.

36

Guide ODBC et JDBC FileMaker

Chapitre 7
Standards pris en charge
Ce chapitre dcrit les instructions et constructions SQL prises en charge par les pilotes clients ODBC et
JDBC de FileMaker. Ces pilotes clients sont destins accder une solution FileMaker partir dune
application compatible ODBC ou JDBC. Cette solution peut tre hberge par FileMaker Pro ou
FileMaker Server Advanced.
Le pilote client ODBC prend en charge ODBC 3.5 niveau 1 avec quelques fonctions de niveau 2.
Le pilote client JDBC prend partiellement en charge la spcification JDBC 3.0. Rendez-vous sur le
site www.filemaker.fr/support/technologies pour plus d'informations. Les pilotes clients ODBC et JDBC
sont compatibles avec le niveau dentre de SQL-92, ainsi quavec certaines fonctions SQL-92 de niveau
intermdiaire.

Prise en charge des caractres Unicode


Les pilotes clients ODBC et JDBC prennent en charge lAPI Unicode. Toutefois, si vous crez une
application personnalise qui emploie les pilotes clients, utilisez le format ASCII pour les noms de
rubriques, de tables et de fichiers (si vous employez un outil de requte ou une application non Unicode).
Remarque Pour insrer et extraire des donnes Unicode, utilisez SQL_C_WCHAR.

instructions SQL
Les pilotes clients ODBC et JDBC prennent en charge les instructions SQL suivantes :
SELECT (voir ci-dessous)

DELETE (page 44)

INSERT (page 44)

UPDATE (page 45)

CREATE TABLE (page 46)

ALTER TABLE (page 47)

CREATE INDEX (page 47)

DROP INDEX (page 48)

Les pilotes clients prennent aussi en charge la conversion du type de donnes FileMaker en types de donnes
ODBC SQL et JDBC SQL. Pour plus dinformations sur les conversions de types de donnes, consultez
la section Correspondances entre les rubriques FileMaker et les types de donnes ODBC , page 61
et la section Correspondances entre les rubriques FileMaker et les types de donnes JDBC , page 62.
Pour plus dinformations sur la cration de requtes SQL, consultez un ouvrage spcialis.
Remarque Les pilotes clients ODBC et JDBC ne prennent pas en charge les tables externes FileMaker.

SELECT, instruction
Linstruction SELECT vous permet de spcifier les colonnes qui vous intressent. Faites suivre linstruction
SELECT des expressions de colonne (comparables aux noms de rubriques) que vous voulez extraire
(par exemple, nom_famille). Les expressions peuvent contenir des oprations mathmatiques ou
des instructions de manipulation de chanes de texte (par exemple, SALAIRE * 1.05).

38

Guide ODBC et JDBC FileMaker

Linstruction SELECT peut tre accompagne de diverses clauses :


SELECT [DISTINCT] {* | expression_colonne [[AS] alias_colonne],...}
FROM nom_table [alias_table], ...
[ WHERE expr1 oprateur_rel expr2 ]
[ GROUP BY {expression_colonne, ...} ]
[ HAVING expr1 oprateur_rel expr2 ]
[ UNION [ALL] (SELECT...) ]
[ ORDER BY {expression_tri [DESC | ASC]}, ... ]
[ FOR UPDATE [OF {expression_colonne, ...}] ]

Les lments entre crochets sont facultatifs.


alias_colonne peut servir attribuer la colonne un nom plus descriptif ou abrger un nom de colonne
long. Par exemple, pour attribuer lalias service la colonne serv :
SELECT serv AS service FROM emp

Vous pouvez faire prcder le nom des rubriques du nom ou de lalias de la table. Par exemple,
EMP.NOM_FAMILLE ou E.NOM_FAMILLE, o E est lalias de la table EMP.
Vous pouvez faire prcder la premire expression de colonne de loprateur DISTINCT. Cet oprateur
supprime les ranges dupliques du rsultat dune requte. Par exemple :
SELECT DISTINCT serv FROM emp

clauses SQL
Les pilotes clients ODBC et JDBC prennent en charge les clauses SQL suivantes.
Utilisez cette clause
SQL

Pour

FROM (page 39)

Indiquer les tables utilises dans linstruction SELECT.

WHERE (page 39)

Indiquer les conditions que doivent remplir les enregistrements extraire (comme dans une
recherche sous FileMaker Pro).

GROUP BY (page 40)

Indiquer le nom dune ou de plusieurs rubriques en fonction desquelles les valeurs renvoyes
doivent tre groupes. Cette clause sert renvoyer un ensemble de valeurs statistiques sous la forme
dune range par groupe (comme dans un sous-rcapitulatif sous FileMaker Pro).

HAVING (page 40)

Indiquer les conditions sappliquant des groupes denregistrements (par exemple, afficher
uniquement les services pour lesquels le total des salaires est suprieur 200 000 euros).

UNION (page 39)

Combinez les rsultats de deux instructions SELECT ou plus en un seul.

ORDER BY (page 41)

Indiquer le mode de tri appliqu aux enregistrements.

FOR UPDATE (page 41)

Pour procder des mises jour positionnes ou des suppressions positionnes via les curseurs SQL

Remarque Si vous essayez de rcuprer des donnes depuis une table sans colonne, linstruction SELECT
ne renvoie rien.

Chapitre 7

Standards pris en charge

39

Clause FROM
La clause FROM indique quelles tables sont utilises dans linstruction SELECT. La syntaxe de cette clause
est la suivante :
FROM nom_table [alias_table], [, nom_table [alias_table]]
nom_table correspond au nom d'une table dans la base de donnes active.
alias_table peut tre utilis pour attribuer la table un nom plus descriptif, pour abrger un nom de table
plus long ou pour inclure la mme table dans la requte plusieurs reprises (par exemple dans les liens internes).

Vous pouvez faire prcder le nom des rubriques du nom ou de lalias de la table. Par exemple, partir de
la spcification de table FROM employs E, vous pouvez faire rfrence la rubrique NOM_FAMILLE
sous la forme E.NOM_FAMILLE. Vous devez imprativement employer des alias de tables quand
linstruction SELECT joint une table elle-mme. Par exemple :
SELECT * FROM employs E, employs F WHERE E.id_directeur = F.id_employ

Le signe gal (=) ninclut que les ranges correspondantes dans le rsultat.
Si vous joignez plusieurs tables et que vous souhaitez ignorer toutes les ranges qui nont pas de ranges
correspondantes dans les deux tables sources, vous pouvez employer une instruction INNER JOIN.
Par exemple :
SELECT *
FROM Vendeurs INNER JOIN Informations_Ventes
ON Vendeurs.ID_Vendeur = Informations_Ventes.ID_Vendeur

Si vous liez deux tables, mais ne souhaitez pas ignorer les ranges de la premire table (table de gauche ),
vous pouvez utiliser LEFT JOIN.
SELECT *
FROM Vendeurs LEFT JOIN Informations_Ventes
ON Vendeurs.ID_Vendeur = Informations_Ventes.ID_Service

Chaque range de la table Vendeurs apparat dans la table lie.


Si vous liez deux tables, mais ne souhaitez pas ignorer les ranges de la seconde table (table de droite ),
vous pouvez utiliser RIGHT JOIN.
SELECT *
FROM Vendeurs RIGHT JOIN Informations_Ventes
ON Vendeurs.ID_Vendeur = Informations_Ventes.ID_Service

Chaque range de la table Informations_Ventes apparat dans la table lie.


Remarques

1 LEFT JOIN est pris en charge tandis que la grammaire LEFT OUTER JOIN ne l'est pas pour le moment.
1 RIGHT JOIN est pris en charge tandis que la grammaire RIGHT OUTER JOIN ne l'est pas pour le moment.
1 FULL OUTER JOIN nest pas pris en charge actuellement.

Clause WHERE
La clause WHERE indique les conditions que les enregistrements doivent remplir pour tre extraits.
Elle spcifie ces conditions sous la forme suivante :
WHERE expr1 oprateur_rel expr2
expr1 et expr2 peuvent tre des noms de rubriques, des valeurs constantes ou des expressions.
oprateur_rel est loprateur relationnel qui lie les deux expressions. Par exemple, linstruction

SELECT suivante extrait le nom des employs dont le salaire est suprieur ou gal 2 000 euros.
SELECT nom_famille,prnom FROM emp WHERE salaire >= 2000

40

Guide ODBC et JDBC FileMaker

La clause WHERE peut galement utiliser des expressions telles que les suivantes :
WHERE expr1 IS NULL
WHERE NOT expr2

Remarque Si vous utilisez des noms entirement qualifis dans la liste (de projection), vous devez
galement utiliser les noms entirement qualifis dans la clause WHERE lie.

Clause GROUP BY
La clause GROUP BY indique les noms dune ou de plusieurs rubriques devant servir grouper les valeurs
renvoyes. Cette clause sert renvoyer un jeu de valeurs statistiques. La syntaxe de cette clause est la suivante :
GROUP BY colonnes
colonnes doit correspondre lexpression de colonne utilise dans la clause SELECT. Une expression de
colonne peut tre compose d'un ou de plusieurs noms de rubriques de la table de base de donnes, spars
par des virgules.

Lexemple suivant calcule la somme des salaires de chaque service.


SELECT id_serv, SUM (salaire) FROM emp GROUP BY id_serv

Cette instruction renvoie une range pour chaque ID de service distinct. Chaque range contient lID
du service et la somme des salaires des employs de ce service.

Clause HAVING
La clause HAVING permet de spcifier des conditions pour des groupes denregistrements (par exemple,
afficher uniquement les services pour lesquels le total des salaires est suprieur 200 000 euros). La syntaxe
de cette clause est la suivante :
HAVING expr1 oprateur_rel expr2
expr1 et expr2 peuvent tre des noms de rubriques, des valeurs constantes ou des expressions. Ces

expressions nont pas besoin de correspondre une expression de colonne de la clause SELECT.
oprateur_rel est loprateur relationnel qui lie les deux expressions. Lexemple suivant renvoie

uniquement les services dont la somme des salaires est suprieure 200 000 euros :
SELECT id_serv, SUM (salaire) FROM emp
GROUP BY id_serv HAVING SUM (salaire) > 200000

Oprateur UNION
Loprateur UNION combine les rsultats de deux instructions SELECT ou plus en un seul et mme rsultat.
Ce rsultat correspond lensemble des enregistrements renvoys par les instructions SELECT. Par dfaut,
le systme ne renvoie pas les enregistrements en double. Si vous les voulez aussi, employez le mot-cl ALL
(UNION ALL). La syntaxe de cette clause est la suivante :
instruction_SELECT UNION [ALL] instruction_SELECT

Avec loprateur UNION, les listes de slection de chaque instruction SELECT doivent avoir le mme
nombre dexpressions de colonne, avec les mmes types de donnes et le mme ordre. Par exemple :
SELECT nom_famille, salaire, date_embauche FROM emp UNION SELECT nom, paie,
date_naissance FROM personne

Cet exemple utilise le mme nombre dexpressions de colonne et chaque expression de colonne, place dans
le mme ordre, utilise le mme type de donnes.

Chapitre 7

Standards pris en charge

41

Lexemple suivant nest pas valide car les types de donnes des expressions de colonne sont diffrents (la
rubrique SALAIRE de la table EMP nemploie pas le mme type de donnes que la rubrique NOM_FAMILLE
de la table AUGMENTATIONS). Cet exemple utilise le mme nombre dexpressions de colonne dans
chaque instruction SELECT mais ces expressions ne sont pas dans le mme ordre par type de donnes.
SELECT nom_famille, salaire FROM emp UNION SELECT salaire, nom_famille FROM
augmentations

Clause ORDER BY
La clause ORDER BY indique comment les enregistrements doivent tre tris. La syntaxe de cette clause
est la suivante :
ORDER BY {expression_tri [DESC | ASC]}, ...
expression_tri peut tre des noms de rubriques, des expressions ou le numro de position de

lexpression de colonne utiliser. Par dfaut, le tri est ascendant (ASC).


Par exemple, pour trier par nom_famille, puis par prnom, vous pouvez employer lune des instructions
SELECT suivantes :
SELECT id_emp, nom_famille, prnom FROM emp ORDER BY nom_famille, prnom

ou
SELECT id_emp, nom_famille, prnom FROM emp ORDER BY 2,3

Dans le second exemple, nom_famille est la deuxime expression de colonne aprs SELECT. ORDER
BY 2 trie donc par nom_famille.

Clause FOR UPDATE


La clause FOR UPDATE verrouille les enregistrements pour des mises jour positionnes ou des suppressions
positionnes via les curseurs SQL. La syntaxe de cette clause est la suivante :
FOR UPDATE [OF expressions_colonne]
expressions_colonne est une liste de noms de rubriques de la table de base de donnes que vous

souhaitez mettre jour, spars par une virgule. Cest un argument facultatif et ignor.
Lexemple suivant renvoie tous les enregistrements de la base de donnes demploys pour lesquels la
rubrique SALAIRE a une valeur suprieure 2 000 euros. Une fois lenregistrement rcupr, il est
verrouill. Si vous mettez jour lenregistrement ou que vous le supprimez, le verrou est maintenu jusqu
ce que vous validiez la modification. Sinon, le verrou disparat quand vous passez lenregistrement suivant.
SELECT * FROM emp WHERE salaire > 20000
FOR UPDATE OF nom, prnom, salaire

42

Guide ODBC et JDBC FileMaker

Exemples supplmentaires :
Utilisation de

Exemple de code SQL

Constante de type texte

SELECT 'ChienChat' FROM Vendeurs

Constante de type numrique

SELECT 999 FROM Vendeurs

Constante de type date

SELECT DATE '05.06.11' FROM Vendeurs

Constante de type heure

SELECT TIME '02:49:03' FROM Vendeurs

Constante de type horodatage

SELECT TIMESTAMP '05.06.11 02:49:03' FROM Vendeurs

Colonne de texte

SELECT Nom_Socit FROM Informations_Ventes


SELECT DISTINCT Nom_Socit FROM Informations_Ventes

colonne de type numrique

SELECT Quantit FROM Informations_Ventes


SELECT DISTINCT Quantit FROM Informations_Ventes

Colonne de type date

SELECT Date_Vente FROM Informations_Ventes


SELECT DISTINCT Date_Vente FROM Informations_Ventes

Colonne de type heure

SELECT Heure_Vente FROM Informations_Ventes


SELECT DISTINCT Heure_Vente FROM Informations_Ventes

Colonne de type horodatage

SELECT Horodatage_Vente FROM Informations_Ventes


SELECT DISTINCT Horodatage_Vente FROM Informations_Ventes

Colonnea Conteneur

SELECT Brochures_Socit FROM Informations_Ventes


SELECT GETAS(Logo_Socit, 'JPEG') FROM Informations_Ventes

Caractre joker *

SELECT * FROM Vendeurs


SELECT DISTINCT * FROM Vendeurs

a. Un conteneur de fichier de base de donnes est une rubrique qui contient un fichier de base de donnes FileMaker.

Notes propos des exemples


Une colonne est une rfrence une rubrique du fichier de base de donnes FileMaker (cette rubrique peut
contenir de nombreuses valeurs distinctes).
Le caractre gnrique (*) est une manire plus courte de dire tout . Lexemple SELECT * FROM
Vendeurs fait apparatre toutes les colonnes de la table Vendeurs. Lexemple SELECT DISTINCT *
FROM Vendeurs fait apparatre toutes les ranges uniques de la table Vendeurs (sans doublons).

1 FileMaker ne stocke pas de donnes pour les chanes vides. Les requtes suivantes ne renvoient donc
jamais aucun enregistrement :
SELECT * FROM test WHERE c =''
SELECT * FROM test WHERE c <>''

1 Si vous utilisez SELECT avec des donnes binaires, vous devez utiliser la fonction GetAs() pour indiquer
le flux renvoyer. Consultez la section Slection du contenu dune rubrique Multimdia : fonctions
CAST() et GetAs(), pour plus d'informations.
Slection du contenu dune rubrique Multimdia : fonctions CAST() et GetAs()
Vous pouvez rcuprer depuis une rubrique Multimdia des donnes binaires, des informations de rfrence
de fichier ou des donnes appartenant un type de fichier particulier.
Pour rcuprer des donnes binaires, utilisez une instruction SELECT standard. Par exemple :
SELECT Brochures_Socit FROM Informations_Ventes

Si les donnes du fichier ou les donnes JPEG existent, linstruction SELECT rcupre les donnes dans
un formulaire binaire ; dans le cas contraire, linstruction SELECT renvoie la valeur <null>.

Chapitre 7

Standards pris en charge

43

Pour rcuprer des informations de rfrence de fichier depuis une rubrique Multimdia, comme le chemin
daccs un fichier, une image ou une squence Quicktime, utilisez la fonction CAST en mme temps
que linstruction SELECT. Par exemple :
SELECT CAST(Brochures_Socit AS VARCHAR(NNN)) FROM Informations_Ventes

Dans cet exemple :

1 Si vous avez insr un fichier dans la rubrique Multimdia en utilisant FileMaker Pro mais que vous avez
enregistr uniquement une rfrence dans le fichier, linstruction SELECT rcupre les informations de
rfrence du fichier comme tant de type SQL_VARCHAR.

1 Si vous avez insr les commentaires dun fichier dans la rubrique Multimdia en utilisant
FileMaker Pro, linstruction SELECT rcupre le nom du fichier.

1 Si vous avez import un fichier dans la rubrique Multimdia depuis une autre application, linstruction
SELECT affiche ? (le fichier apparat sous la forme Untitled.dat dans FileMaker Pro).
Pour rcuprer des donnes depuis une rubrique Multimdia, utilisez la fonction GetAs et indiquez le type
du fichier en fonction du mode dinsertion des donnes dans la rubrique Multimdia dans FileMaker Pro.

1 Si les donnes ont t insres laide de la commande Insrer > fichier, indiquez 'FILE' dans la fonction
GetAs. Par exemple :
SELECT GetAs(Brochures_Socit, 'FILE') FROM Informations_Ventes

1 Si les donnes ont t insres laide de la commande Insrer > son (audio standard format brut
Mac OS), indiquez 'snd' dans la fonction GetAs. Par exemple :
SELECT GetAs(Runion_Socit, 'snd') FROM LettreInfo_Socit

1 Si les donnes ont t insres laide de la commande Insrer > objet (donnes multimdia OLE),
indiquez 'EMBO' dans la fonction GetAs. Par exemple :
SELECT GetAs(Rsultats_Socit, 'EMBO') FROM Rapport_Annuel

1 Si les donnes ont t insres laide de la commande Insertion > Image, faites glisser et dposez
le fichier, ou copiez-le depuis le Presse-papiers, et indiquez lun des types de fichiers rpertori dans
le tableau ci-dessous. Par exemple :
SELECT GetAs(Logo_Socit, 'JPEG') FROM Icnes_Socit

Type de
fichier

Description

Type de
fichier

Description

'EMF+'

Windows Enhanced Metafile Plus

PDF

Portable Document Format

EPS

Embedded PostScript

PICT

Mac OS (sans en-tte de fichier de 512 octets)

FPix

Flash (FPX)

PNGf

Format dimage Bitmap

FORK

Resource fork (Mac OS)

PNTG

MacPaint

GIFf

Graphics Interchange Format

qtif

Fichier image QuickTime

JPEG

Photos

SGI

Format bitmap gnrique

JP2

JPEG 2000

TIFF

Format de fichier trame pour images numriques

META

Mtafichier Windows (amlior)

TPIC

Targa

METO

Windows Metafile (original)

XMLO

Objets de modle

moov

Ancien format QuickTime (Mac OS)

8BPS

PhotoShop (PSD)

44

Guide ODBC et JDBC FileMaker

DELETE
Linstruction DELETE permet de supprimer des enregistrements dune table de base de donnes. La syntaxe
de cette instruction est la suivante :
DELETE FROM nom_table [ WHERE { conditions } ]

Remarque La clause WHERE indique quels enregistrements doivent tre supprims. Si vous nincluez
pas le mot-cl WHERE, tous les enregistrements de la table seront supprims (mais la table restera intacte).
Voici un exemple dinstruction DELETE applique la table Employs :
DELETE FROM emp WHERE id_emp = 'E10001'

Chaque instruction DELETE supprime chaque enregistrement runissant les conditions dfinies dans
la clause WHERE. Ici, chaque enregistrement demploy contenant le numro didentification E10001
est supprim. Les numros didentification tant uniques dans la table Employs, un seul enregistrement
est supprim.

INSERT
Linstruction SQL INSERT permet de crer des enregistrements dans une table de base de donnes.
Vous pouvez spcifier, au choix :

1 Une liste de valeurs insrer sous la forme dun nouvel enregistrement


1 Une instruction SELECT permettant de copier les donnes dune autre table et de les insrer sous forme
de nouveaux enregistrements
La syntaxe de cette instruction est la suivante :
INSERT INTO nom_table [(nom_col, ...)] VALUES (expr, ...)
[, VALUES (expr, ...)]
nom_col est une liste facultative de noms de colonnes qui indique le nom des diffrentes colonnes (dans
lordre appropri) dont les valeurs sont spcifies dans la clause VALUES. Si vous omettez nom_col, les
expressions de valeur (expr) doivent fournir des valeurs pour toutes les colonnes dfinies dans la table et
elles doivent figurer dans le mme ordre que les colonnes dfinies pour la table. nom_col peut galement

indiquer une rubrique multivalue, par exemple lastDates[4].


expr reprsente la liste dexpressions donnant les valeurs des colonnes du nouvel enregistrement.
Gnralement, les expressions sont les valeurs constantes des colonnes (mais il peut galement sagir dune
sous-requte). Les valeurs de type chane de caractres doivent tre places entre guillemets simples (').
Pour inclure un guillemet simple (correspondant une apostrophe) dans une valeur de type chane de
caractres place entre guillemets simples, utilisez deux guillemets simples conscutifs (par exemple 'L''instance').

Les sous-requtes doivent tre entre parenthses.


Lexemple suivant insre une liste dexpressions :
INSERT INTO emp (nom_famille, prnom, id_emp, salaire, date_embauche)
VALUES ('Martin', 'Robert', 'E22345', 27500, {d '05/06/2008'})

Chapitre 7

Standards pris en charge

45

Chaque instruction INSERT ajoute un enregistrement la table de base de donnes. Ici, un enregistrement
a t ajout la table EMP (employs) de la base de donnes, avec des valeurs pour cinq colonnes. Les autres
colonnes de la table n'ont pas reu de valeur. Autrement dit, leur valeur est nulle.
Remarque Dans les rubriques Multimdia, vous ne pouvez utiliser INSERT que pour du texte, moins de
prparer une dclaration paramtre et de gnrer le flux de donnes depuis votre application. Pour utiliser
des donnes binaires, vous devez spcifier le type dans une fonction PutAs() : PutAs(col, 'type'),
o la valeur du type est un type comme dcrit dans la section Slection du contenu dune rubrique
Multimdia : fonctions CAST() et GetAs() page 42.
Linstruction SELECT est une requte qui renvoie des valeurs pour chaque valeur nom_col spcifie dans
la liste de noms de colonnes. En employant une instruction SELECT plutt quune liste dexpressions de
valeurs, vous avez la possibilit de slectionner un ensemble de ranges dans une table et de linsrer dans
une autre table laide dune mme instruction INSERT.
Voici un exemple dinstruction INSERT associe une instruction SELECT :
INSERT INTO emp1 (prnom, nom_famille, id_emp, service, salaire)
SELECT prnom, nom_famille, id_emp, service, salaire from emp
WHERE serv = D050

Dans ce type dinstruction INSERT, le nombre de colonnes insrer doit tre le mme que celui des colonnes
spcifies dans linstruction SELECT et les colonnes doivent tre identiques dans les deux instructions
(comme cest le cas avec une liste de valeurs dans lautre type dinstruction INSERT). Par exemple, la
premire colonne insre correspond la premire colonne slectionne, la deuxime la deuxime colonne
slectionne, et ainsi de suite.
La taille et le type de donnes de ces colonnes correspondantes doivent tre compatibles. Chaque colonne
de la liste SELECT doit avoir un type de donnes accept par le pilote client ODBC ou JDBC pour une
opration INSERT/UPDATE sur la colonne correspondante de la liste INSERT. Les valeurs sont tronques
si la taille de la valeur de la colonne SELECT est suprieure celle de la colonne INSERT correspondante.
Linstruction SELECT est value avant linsertion des valeurs.

UPDATE
Linstruction UPDATE permet de modifier les enregistrements dune table de base de donnes. La syntaxe
de cette instruction est la suivante :
UPDATE nom_table SET nom_col = expr, ... [ WHERE { conditions } ]
nom_col est le nom dune colonne dont la valeur doit tre modifie. Vous pouvez modifier plusieurs
colonnes dans la mme instruction.
expr est la nouvelle valeur de la colonne.

Gnralement, les expressions sont les valeurs constantes des colonnes (mais il peut galement sagir dune
sous-requte). Les valeurs de type chane de caractres doivent tre places entre guillemets simples ('). Pour
inclure un guillemet simple (correspondant une apostrophe) dans une valeur de type chane de caractres
place entre guillemets simples, utilisez deux guillemets simples conscutifs (par exemple 'L''instance').
Les sous-requtes doivent tre entre parenthses.
La clause WHERE peut tre toute clause valide. Elle dtermine les enregistrements modifier.
Voici un exemple dinstruction UPDATE applique la table Employs :
UPDATE emp SET salaire=32000, exempt=1 WHERE id_emp = 'E10001'

46

Guide ODBC et JDBC FileMaker

Cette instruction UPDATE a pour effet de modifier chaque enregistrement runissant les conditions dfinies
dans la clause WHERE. Ici, il sagit de changer le salaire et le statut dexemption pour tous les employs
dont le numro didentification est E10001. Les numros didentification tant uniques dans la table
Employs, un seul enregistrement est mis jour.
Voici un exemple comportant une sous-requte :
UPDATE emp SET salaire = (SELECT avg(salaire) from emp) WHERE id_emp =
'E10001'

Ici, le salaire de lemploy dont le numro didentification est E10001 est remplac par le salaire moyen
de la socit.
Remarque Dans les rubriques Multimdia, vous ne pouvez utiliser UPDATE qu'avec du texte, moins de
prparer une dclaration paramtre et de gnrer le flux de donnes depuis votre application. Pour utiliser
des donnes binaires, vous devez spcifier le type dans une fonction PutAs() : PutAs(col, 'type'),
o la valeur du type est un type comme dcrit dans la section Slection du contenu dune rubrique
Multimdia : fonctions CAST() et GetAs() page 42.

CREATE TABLE
Linstruction CREATE TABLE permet de crer une table dans un fichier de base de donnes. La syntaxe
de cette instruction est la suivante :
CREATE TABLE nom_table liste_lments_de_table [DEFAULT expr][UNIQUE][NOT
NULL]

Dans cette instruction, vous devez indiquer le nom et le type de donnes de chaque colonne.

1 nom_table et liste_lments_de_table sont limits 100 caractres chacun.


1 Le mot-cl DEFAULT vous permet de dfinir une valeur par dfaut pour une colonne. Vous pouvez
utiliser un lment littral tel que CURRENT_USER, CURRENT_DATE, CURRENT_TIME ou
CURRENT_TIMESTAMP.

1 Quand vous dfinissez une colonne comme UNIQUE, loption de validation Unique est slectionne
automatiquement pour la rubrique correspondante dans le fichier de base de donnes FileMaker.

1 Quand vous dfinissez une colonne en tant que NOT NULL, loption de validation Non vide est
slectionne automatiquement pour la rubrique correspondante dans le fichier de base de donnes
FileMaker. La rubrique est marque en tant que Valeur requise dans longlet Rubriques de la bote
de dialogue Grer la base de donnes pour FileMaker Pro.

Chapitre 7

Standards pris en charge

47

Exemples
Utilisation de

Exemple de code SQL

Colonne de texte

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


(500276))

colonne de type texte, NOT CREATE TABLE T1NN (C1 VARCAR NOT NULL, C2 VARCAR (50) NOT NULL, C3 VARCAR
(1001) NOT NULL, C4 VARCAR (500276) NOT NULL)
NULL
colonne de type numrique

CREATE TABLE T2 (C1 DECIMAL, C2 DECIMAL (10,0), C3 DECIMAL (7539,2),


C4 DECIMAL (497925,301))

Colonne de type date

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

Colonne de type heure

CREATE TABLE T4 (C1 HEURE, C2 HEURE, C3 HEURE, C4 HEURE)

Colonne de type horodatage CREATE TABLE T5 (C1 HORODATAGE, C2 HORODATAGE, C3 HORODATAGE, C4 HORODATAGE)
Colonne Conteneur

CREATE TABLE T6 (C1 CONTENEUR, C2 CONTENEUR, C3 CONTENEUR, C4 CONTENEUR)

ALTER TABLE
Linstruction ALTER TABLE permet de modifier la structure dune table existante dun fichier de base de
donnes. Chaque instruction ne permet de modifier quune colonne. La syntaxe de cette instruction est la
suivante :
ALTER TABLE nom_table ADD [COLUMN] dfinition_colonne
ALTER TABLE nom_table DROP [COLUMN] nom_colonne_non_qualifi
ALTER TABLE nom_table ALTER [COLUMN] dfinition_colonne SET DEFAULT expr
ALTER TABLE nom_table ALTER [COLUMN] dfinition_colonne DROP DEFAULT

Vous devez connatre la structure de la table et savoir comment vous souhaitez la modifier avant dutiliser
linstruction ALTER TABLE.
Exemples
Pour

Exemple de code SQL

Ajouter des colonnes

ALTER TABLE Vendeurs ADD (C1 VARCAR)

Supprimer des colonnes

ALTER TABLE Vendeurs DROP (C1)

Dfinir la valeur par dfaut


d'une colonne

ALTER TABLE Vendeurs ALTER Socit SET DEFAULT 'FileMaker'

Supprimer la valeur par


dfaut d'une colonne

ALTER TABLE Vendeurs ALTER Socit DROP DEFAULT

Remarque SET DEFAULT et DROP DEFAULT n'affectent pas les ranges existantes de la table, mais
modifient la valeur par dfaut des ranges ajoutes par la suite la table.

CREATE INDEX
Linstruction CREATE INDEX permet dacclrer les recherches dans un fichier de base de donnes. La
syntaxe de cette instruction est la suivante :
CREATE INDEX ON nom_table.nom_col
CREATE INDEX ON nom_table (nom_col)

48

Guide ODBC et JDBC FileMaker

CREATE INDEX ne fonctionne quavec une colonne unique (les index multi-colonne ne sont pas pris en
charge). Les index ne sont pas autoriss sur les colonnes correspondant des rubriques de type conteneur
ou statistique, des rubriques employant des options de stockage global ou des rubriques de type calcul
non stockes.
Quand vous crez un index pour une colonne de type texte, loption de stockage Minimal est slectionne
automatiquement dans Indexation pour la rubrique correspondante du fichier de base de donnes FileMaker.
Quand vous crez un index pour une colonne qui nest pas de type texte (ou pour une colonne de type texte
au format japonais), loption de stockage Tout est slectionne automatiquement dans Indexation pour la
rubrique correspondante du fichier de base de donnes FileMaker.
Quand vous crez un index pour une colonne, loption de stockage Indexation automatique si ncessaire
est slectionne automatiquement dans Indexation pour la rubrique correspondante du fichier de base de
donnes FileMaker.
FileMaker cre automatiquement les index selon les besoins. L'utilisation de CREATE INDEX entrane
la gnration immdiate de l'index plutt qu' la demande.
Exemple
CREATE INDEX ON Vendeurs.ID_vendeur

DROP INDEX, instruction


Linstruction DROP INDEX permet de supprimer un index dun fichier de base de donnes. La syntaxe
de cette instruction est la suivante :
DROP INDEX ON nom_table.nom_col
DROP INDEX ON nom_table (nom_col)

Vous pouvez supprimer un index quand votre fichier de base de donnes est trop volumineux ou quand
vous nemployez pas souvent une rubrique dans les requtes.
Si les performances de vos requtes ne sont pas satisfaisantes et si vous travaillez sur un fichier de base
de donnes FileMaker extrmement volumineux contenant un grand nombre de rubriques de type texte
indexes, pensez supprimer les index de certaines rubriques. Pensez galement supprimer les index
des rubriques que vous utilisez rarement dans des instructions SELECT.
Quand vous supprimez un index pour une colonne, loption de stockage Aucun est slectionne et loption
Indexation automatique si ncessaire est dslectionne automatiquement dans Indexation pour la rubrique
correspondante du fichier de base de donnes FileMaker.
Lattribut PREVENT INDEX CREATION nest pas pris en charge.
Exemple
DROP INDEX ON Vendeurs.ID_Vendeur

Chapitre 7

Standards pris en charge

49

Fonctions statistiques SQL


Les fonctions statistiques renvoient une valeur unique partir dun jeu denregistrements. Vous pouvez
employer une fonction statistique dans une instruction SELECT avec un nom de rubrique (par exemple,
AVG(SALAIRE)) ou en combinaison avec une expression de colonne (par exemple, AVG(SALAIRE * 1.07)).
Vous pouvez faire prcder lexpression de colonne de loprateur DISTINCT pour liminer les doublons.
Par exemple :
COUNT (DISTINCT nom_famille)

Dans cet exemple, seules les valeurs de nom de famille uniques sont comptes.
Exemples
Fonctions statistiques

Rsultat

SUM

Total des valeurs dune expression de rubrique de type numrique. Par exemple, SUM(SALAIRE)
renvoie la somme de toutes les valeurs de la rubrique SALAIRE.

AVG

Moyenne des valeurs dune expression de rubriques de type numrique. Par exemple,
AVG(SALAIRE) renvoie la moyenne de toutes les valeurs de la rubrique SALAIRE.

COUNT

Nombre de valeurs dune expression de rubrique. Par exemple, COUNT(NOM) renvoie le nombre
de valeurs de la rubrique NOM. Utilis avec un nom de rubrique, COUNT renvoie le nombre de
valeurs non nulles de la rubrique. COUNT(*) est une forme spciale qui renvoie le nombre
denregistrements du jeu, en incluant ceux qui contiennent des valeurs nulles.

MAX

Valeur maximale dune expression de rubrique. Par exemple, MAX(SALAIRE) renvoie la valeur
maximale de la rubrique SALAIRE.

MIN

Valeur minimale dune expression de rubrique. Par exemple, MAX(SALAIRE) renvoie la valeur
minimale de la rubrique SALAIRE.

SELECT SUM (Informations_Ventes.Quantit) AS stat FROM Informations_Ventes


SELECT AVG (Informations_Ventes.Quantit) AS stat FROM Informations_Ventes
SELECT COUNT (Informations_Ventes.Quantit) AS stat FROM Informations_Ventes
SELECT MAX (Informations_Ventes.Quantit) AS stat FROM Informations_Ventes
WHERE Informations_Ventes.Quantit < 3000
SELECT MIN (Informations_Ventes.Quantit) AS stat FROM Informations_Ventes
WHERE Informations_Ventes.Quantit > 3000

Expressions SQL
Vous pouvez utiliser des expressions dans les clauses WHERE, HAVING et ORDER BY des instructions
SELECT pour former des requtes de base de donnes complexes. Les lments dexpression valides sont
les suivants :
Noms de rubriques

Oprateurs numriques

oprateurs relationnels ;

Constantes

Oprateurs de caractres

Oprateurs logiques

notation en virgule flottante ;

Oprateurs de dates

Fonctions

Noms de rubriques
Lexpression la plus courante est un simple nom de rubrique, tel que calc ou
Informations_Ventes.ID_facture.

50

Guide ODBC et JDBC FileMaker

Constantes
Une constante est une valeur qui ne change pas. Par exemple, dans lexpression PRIX * 1.05, la valeur 1.05
est une constante. Vous pouvez aussi affecter la valeur 30 la constante Nombre_de_jours_en_juin.
Les valeurs de type constante doivent tre places entre guillemets simples ('). Pour inclure un guillemet
simple (correspondant une apostrophe) dans une constante de type chane de caractres place entre
guillemets simples, utilisez deux guillemets simples conscutifs (par exemple 'L''instance').
FileMaker accepte les constantes de date, d'heure et d'horodatage au format ODBC/JDBC entre accolades
({}), par exemple :

1 {D '05/06/2010'}
1 {T '14:35:10'}
1 {TS '05/06/2010 14:35:10'}
FileMaker accepte galement les formats de date et d'heure ISO syntaxe SQL-92 sans accolades :

1 DATE 'JJ-MM-AAAA'
1 HEURE 'HH:MM:SS'
1 HORODATAGE 'JJ-MM-AAAA HH:MM:SS'
Constante

Syntaxe acceptable (exemples)

Texte

'Paris'

Nombre

1.05

Date

DATE '05.06.2010'
{ D '05.06.2010' }
{06/05/2010}
{06/05/10}
N.B. : La syntaxe d'anne deux chiffres n'est pas prise en charge pour le format ODBC/JDBC
ou le format SQL-92.

Heure

HEURE '14:35:10'
{ H '14:35:10' }
{14:35:10}

Horodatage

HORODATAGE '05.06.2010 14:35:10'


{ HD '05.06.2010 14:35:10'}
{06/05/2010 14:35:10}
{06/05/10 14:35:10}
Vrifiez que Type de donnes : Anne 4 chiffres nest pas slectionne comme option de validation
dans le fichier de base de donnes FileMaker pour une rubrique qui utilise cette syntaxe danne
deux chiffres.
N.B. : La syntaxe d'anne deux chiffres n'est pas prise en charge pour le format ODBC/JDBC
ou le format SQL-92.

Au moment de saisir la date et lheure, utilisez le format de la locale du fichier de base de donnes. Par
exemple, si la base de donnes a t cre sur un systme italien, respectez les formats italiens de date et
dheure.

Chapitre 7

Standards pris en charge

51

Notification en virgule flottante/scientifique


Les nombres peuvent tre exprims l'aide d'une notation scientifique.
Exemple
SELECT colonne1 / 3.4E+7 FROM table1 WHERE calc < 3.4E-6 * colonne2

Oprateurs numriques
Vous pouvez inclure les oprateurs suivants dans une expression numrique : +, -, *, /, et ^ ou ** (puissance).
Vous pouvez faire prcder une expression numrique dun plus (+) ou dun moins (-) unaire.

Oprateurs de caractres
Vous pouvez concatner des caractres.
Exemples
Dans les exemples suivants, nom_famille a pour valeur 'MARTIN ' et prnom 'ROBERT ' :
Oprateur

Concatnation

Exemple

Rsultat

Laisse les espaces finaux leur place

prnom + nom_famille

'ROBERT MARTIN '

Dplace les espaces finaux la fin

prnom - nom_famille

'ROBERTMARTIN '

Oprateurs de dates
Vous pouvez modifier des dates.
Exemples
Dans les exemples suivants, date_embauche correspond {D '30/01/2008'}.
Oprateur

Effet sur la date

Exemple

Rsultat

Ajoute un nombre de jours une date

date_embauche + 5

{D '04/02/2008'}

Calcule le nombre de jours entre deux dates ou


soustrait un nombre de jours dune date

date_embauche - {D '01/01/2008'}
date_embauche - 10

29
{D '20/01/2008'}

Exemples supplmentaires :
SELECT Date_Vente, Date_Vente + 30 AS stat FROM Informations_Ventes
SELECT Date_Vente, Date_Vente - 30 AS stat FROM Informations_Ventes

52

Guide ODBC et JDBC FileMaker

Oprateurs relationnels
Oprateur

Signification

Egal

<>

Nest pas gal

>

Suprieur

>=

Suprieur ou gal

<

Infrieur

<=

Infrieur ou gal

LIKE

Identique une structure

NOT LIKE

Pas identique une structure

IS NULL

A une valeur nulle

IS NOT NULL

Na pas de valeur nulle

BETWEEN

Plage de valeurs entre une limite infrieure et une limite suprieure

IN

Membre dun jeu de valeurs indiques ou dune sous-requte

NOT IN

Non membre dun jeu de valeurs indiques ou dune sous-requte

EXISTS

Renvoie True (Vrai) si une sous-requte a renvoy au moins un enregistrement

ANY

Compare une valeur chaque valeur renvoye par une sous-requte (loprateur doit tre prcd
de =, <>, >, >=, < ou <=); =Any est quivalent In

ALL

Compare une valeur chaque valeur renvoye par une sous-requte (loprateur doit tre prcd
de =, <>, >, >=, <, or <=)

Exemples
SELECT Informations_Ventes.ID_Facture FROM Informations_Ventes
WHERE Informations_Ventes.ID_Vendeur = 'SP-1'
SELECT Informations_Ventes.Quantit FROM Informations_Ventes WHERE
Informations_Ventes.ID_Facture <> 125
SELECT Informations_Ventes.Quantit FROM Informations_Ventes WHERE
Informations_Ventes.Quantit > 3000
SELECT Informations_Ventes.Heure_Vente FROM Informations_Ventes
WHERE Informations_Ventes.Heure_Vente < '12:00:00'
SELECT Informations_Ventes.Nom_Socit FROM Informations_Ventes
WHERE Informations_Ventes.Nom_Socit LIKE '%Universit'
SELECT Informations_Ventes.Nom_Socit FROM Informations_Ventes
WHERE Informations_Ventes.Nom_Socit NOT LIKE '%Universit'
SELECT Informations_Ventes.Montant FROM Informations_Ventes WHERE
Informations_Ventes.Montant IS NULL
SELECT Informations_Ventes.Montant FROM Informations_Ventes WHERE
Informations_Ventes.Montant IS NOT NULL
SELECT Informations_Ventes.ID_Facture FROM Informations_Ventes
WHERE Informations_Ventes.ID_Facture BETWEEN 1 AND 10
SELECT COUNT(Informations_Ventes.ID_Facture) AS stat
FROM Informations_Ventes WHERE Informations_Ventes.ID_Facture IN
(50,250,100)

Chapitre 7

Standards pris en charge

53

SELECT COUNT(Informations_Ventes.ID_Facture) AS stat


FROM Informations_Ventes WHERE Informations_Ventes.ID_Facture NOT IN
(50,250,100)
SELECT COUNT(Informations_Ventes.ID_Facture) AS stat FROM
Informations_Ventes
WHERE Informations_Ventes.ID_FACTURE NOT IN (SELECT
Informations_Ventes.ID_Facture
FROM Informations_Ventes WHERE Informations_Ventes.ID_Vendeur = 'SP-4')
SELECT *
FROM Informations_Ventes WHERE EXISTS (SELECT
Informations_Ventes.Quantit
FROM Informations_Ventes WHERE Informations_Ventes.ID_Vendeur IS NOT
NULL)
SELECT *
FROM Informations_Ventes WHERE Informations_Ventes.Quantit = ANY (SELECT
Informations_Ventes.Quantit
FROM Informations_Ventes WHERE Informations_Ventes.ID_Vendeur = 'SP-1')
SELECT *
FROM Informations_Ventes WHERE Informations_Ventes.Quantit = ALL (SELECT
Informations_Ventes.Quantit
FROM Informations_Ventes WHERE Informations_Ventes.ID_Vendeur IS NULL)

Oprateurs logiques
Vous pouvez combiner deux conditions ou davantage. Ces conditions doivent tre lies par AND ou OR,
sous la forme :
salaire = 40000 AND exempt = 1

Loprateur logique NOT sert inverser la signification, sous la forme :


NOT (salaire = 40000 AND exempt = 1)

Exemples
SELECT * FROM Informations_Ventes WHERE Informations_Ventes.Nom_Socit
NOT LIKE '%Universit' AND Informations_Ventes.Montant > 3000
SELECT * FROM Informations_Ventes WHERE (Informations_Ventes.Nom_Socit
LIKE '%Universit' OR Informations_Ventes.Montant > 3000)
AND Informations_Ventes.ID_Vendeur = 'SP-1'

Fonctions
Le langage SQL de FileMaker prend en charge un grand nombre de fonctions utiliser dans des expressions.
Certaines fonctions renvoient des chanes de caractres, dautres des nombres et dautres des dates.

54

Guide ODBC et JDBC FileMaker

Fonctions qui renvoient des chanes de caractres


Fonctions qui
renvoient des
chanes de
caractres

Description

Exemple

CHR

Convertit un code ASCII en chane dun caractre

CHR(67) renvoie C

CURRENT_USER

Renvoie le nom dutilisateur employ pour tablir la


connexion

DAYNAME

Renvoie le nom du jeu correspondant une date


prcise

RTRIM

Supprime les espaces finaux dune chane

TRIM

Supprime les espaces de dbut et finaux dune chane TRIM(' ABC ') renvoie 'ABC'

LTRIM

Supprime les espaces de dbut dune chane

UPPER

Transforme chaque lettre dune chane en majuscule UPPER('Alain') renvoie 'ALAIN'

LOWER

Transforme chaque lettre dune chane en minuscule LOWER('Alain') renvoie 'alain'

LEFT

Renvoie les caractres les plus gauche dune chane LEFT('Mathieu',3) renvoie 'Mat'

MONTHNAME

Renvoie le nom du mois calendaire.

RIGHT

Renvoie les caractres les plus droites dune chane RIGHT('Mathieu',4) renvoie 'hieu'

SUBSTR
SUBSTRING

Renvoie une sous-chane de chane avec les


SUBSTR('Conrad',2,3) renvoie 'onr'
paramtres de la chane, le premier caractre extraire SUBSTR('Conrad',2) renvoie 'onrad'
et le nombre de caractres extraire (facultatif)

SPACE

Gnre une chane despaces

SPACE(5) renvoie '

STRVAL

Convertit une valeur de nimporte quel type en


chane de caractres

STRVAL('Woltman') renvoie 'Woltman'


STRVAL(5 * 3) renvoie '15'
STRVAL(4 = 5) renvoie 'False'
STRVAL({D '25/12/2008'})
renvoie '25/12/2008'

TIME
TIMEVAL

Renvoie lheure du jour sous forme de chane

A 21 h 49, TIME() renvoie 21:49:00

USERNAME
USER

Renvoie le nom dutilisateur employ pour tablir la


connexion

RTRIM(' ABC ') renvoie' ABC'

LTRIM(' ABC ') renvoie 'ABC'

'

Remarque La fonction TIME() n'est plus utilise. Utilisez le standard SQL CURRENT_TIME pour
la remplacer.
Exemples
SELECT CHR(67) + SPACE(1) + CHR(70) FROM Vendeurs
SELECT RTRIM(' ' + Vendeurs.ID_Vendeur) AS stat FROM Vendeurs
SELECT TRIM(SPACE(1) + Vendeurs.ID_Vendeur) AS stat FROM Vendeurs
SELECT LTRIM(' ' + Vendeurs.ID_Vendeur) AS stat FROM Vendeurs
SELECT UPPER(Vendeurs.Vendeur) AS stat FROM Vendeurs
SELECT LOWER(Vendeurs.Vendeur) AS stat FROM Vendeurs
SELECT LEFT(Vendeurs.Vendeur, 5) AS stat FROM Vendeurs
SELECT RIGHT(Vendeurs.Vendeur, 7) AS stat FROM Vendeurs

55

Guide ODBC et JDBC FileMaker

SELECT SUBSTR(Vendeurs.ID_Vendeur, 2, 2) + SUBSTR(Vendeurs.ID_Vendeur, 4, 2)


AS stat FROM Vendeurs
SELECT SUBSTR(Vendeurs.ID_Vendeur, 2) + SUBSTR(Vendeurs.ID_Vendeur, 4) AS
stat FROM Vendeurs
SELECT SPACE(2) + Vendeurs.ID_Vendeur AS ID_Vendeur FROM Vendeurs
SELECT STRVAL('60506') AS stat FROM Informations_Ventes WHERE
Informations_Ventes.Facture = 1

Fonctions qui renvoient des nombres


Fonctions qui
renvoient des
nombres

Description

ABS

Renvoie la valeur absolue de l'expression numrique

ATAN

Renvoie la tangente inverse de l'argument sous la forme


d'un angle exprim en radians

ATAN2

Renvoie la tangente inverse des coordonnes x et y sous la


forme d'un angle exprim en radians

Renvoie lquivalent dcimal dun nombre binaire

CEIL
CEILING

Renvoie le plus petit entier suprieur ou gal l'argument

DEG
DEGREES

Renvoie le nombre de degrs de l'argument, qui est un


angle exprim en radians

DAY

Renvoie la partie dune date correspondant au jour

DAY({d '30/01/2010'}) renvoie 30

DAYOFWEEK

Renvoie le jour de la semaine (de 1 7) dune expression


de date

DAYOFWEEK({d '01/05/2004'})

MOD

Divise deux nombres et renvoie le reste de la division

MOD(10,3) renvoie 1

EXP

Renvoie une valeur qui est la base du logarithme nprien


(e) lev la puissance spcifie par l'argument

FLOOR

Renvoie le plus grand entier infrieur ou gal l'argument

HOUR

Renvoie la partie dune valeur correspondant l'heure

INT

Renvoie la partie entire dun nombre

INT(6.4321) renvoie 6

LEN
LENGTH

Renvoie la longueur dune chane

LEN('ABC') renvoie 3

MONTH

Renvoie la partie dune date correspondant au mois

MONTH({d '30/01/2010'}) renvoie 1

LN
LOG

Renvoie le logarithme nprien de l'argument

MAX

Renvoie le plus grand de deux nombres

MAX(66,89) renvoie 89

MIN

Renvoie le plus petit de deux nombres

MIN(66,89) renvoie 66

MINUTE

Renvoie la partie dune valeur correspondant aux minutes

NUMVAL

Convertit une chane de caractres en nombre. Si la chane NUMVAL('123') renvoie 123


de caractres nest pas valide, renvoie 0

PI

Renvoie la valeur de constante de la constante


mathmatique pi

POW

Elve un nombre une puissance

Exemple

B'1001' renvoie 9

renvoie 7

POW(7,2) renvoie 49

56

Guide ODBC et JDBC FileMaker

Fonctions qui
renvoient des
nombres

Description

Exemple

RADIANS

Renvoie le nombre de radians pour un argument exprim


en degrs

ROUND

Arrondit un nombre

SECOND

Renvoie la partie dune valeur correspondant aux secondes

SIGN

Indicateur du signe de l'argument : -1 pour ngatif, 0 pour


0 et 1 pour positif

SIN

Renvoie le sinus de l'argument

SQRT

Renvoie la racine carre de l'argument

TAN

Renvoie la tangente de l'argument

VAL

Convertit une chane de caractres en nombre. Si la chane VAL('123') renvoie 123


de caractres nest pas valide, renvoie 0

Renvoie lquivalent dcimal dun nombre hexadcimal

X'b9' renvoie 185

YEAR

Renvoie la partie dune date correspondant lanne

YEAR({d '30/01/2010'}) renvoie 2010

ROUND(123 456,0) renvoie 123


ROUND(123 456,2) renvoie 123,46
ROUND(123.456,-2) renvoie 100

Fonctions qui renvoient des dates


Fonctions qui
renvoient des dates

Description

CURDATE
CURRENT_DATE

Renvoie la date du jour

CURTIME
CURRENT_TIME

Renvoie l'heure actuelle

Exemple

CURTIMESTAMP
Renvoie la valeur d'horodatage actuelle
CURRENT_TIMESTAMP
TIMESTAMPVAL
DATE
TODAY

Renvoie la date du jour

Si la date du jour est le 21/11/2010, DATE() renvoie


21-11-2010

DATEVAL

Convertit une chane de caractres en date

DATEVAL('01/30/2011') renvoie 30.01.11

Remarque La fonction DATE() n'est plus utilise. Utilisez le standard SQL CURRENT_DATE pour la
remplacer.

Chapitre 7

Standards pris en charge

57

Ordre de priorit des oprateurs


Au fur et mesure que les expressions se compliquent, lordre dans lequel elles sont values devient
important. Le tableau suivant montre dans quel ordre les oprateurs sont valus. Les oprateurs de la
premire ligne sont valus en premier et ainsi de suite. Les oprateurs qui figurent sur une mme ligne
sont valus de gauche droite dans lexpression.
Ordre de
priorit

Oprateur

'-' unaire, '+' unaire

^, **

*, /

+, -

=, <>, <, <=, >, >=, Like, Not Like, Is Null, Is Not Null, Between, In, Exists, Any, All

Not

AND

OR

Lexemple suivant montre limportance de lordre de priorit :


WHERE salaire > 40000 OR date_embauche > {d '30/01/2008'} AND serv = 'D101'

Comme loprateur AND est valu en premier, cette requte extrait les employs du service D101
embauchs aprs le 30.01.08, ainsi que les employs dont le salaire est suprieur 40 000 euros quel que
soit leur service ou leur date dembauche.
Pour forcer la clause tre value dans un ordre diffrent, utilisez des parenthses pour spcifier les
conditions valuer en premier. Par exemple :
WHERE (salaire > 40000 OR date_embauche > {d '30/01/2008'}) AND serv =
'D101'

extrait les employs du service D101 dont le salaire est suprieur 4 000 euros ou qui ont t embauchs aprs
le 30.01.08

Fonctions de catalogue ODBC


Le pilote client ODBC prend en charge les fonctions de catalogue suivantes :

1 SQLTables : les informations de catalogue sont stockes et reportes sous forme de noms d'lment
uniques (nom de table seulement).

1
1
1
1

SQLColumns
SQLColumnPrivileges
SQLDescribeCol
SQLGetTypeInfo

58

Guide ODBC et JDBC FileMaker

Fonctions de mtadonnes JDBC


Le pilote client JDBC prend en charge les fonctions de mtadonnes suivantes :

1 getColumns
1 getColumnPrivileges
1
1
1
1

getMetaData
getTypeInfo
getTables
getTableTypes

Mots-cls SQL rservs


Le tableau suivant liste les mots-cls rservs qui ne doivent pas tre utiliss comme noms de colonnes, de
tables, dalias ou dautres objets dfinis par lutilisateur. Si vous obtenez des erreurs de syntaxe, ces erreurs
peuvent tre dues lutilisation de lun de ces mots-cls rservs. Si vous souhaitez utiliser lun de ces motscls, utilisez des guillemets pour viter que le mot soit trait comme un mot-cl.

Chapitre 7

Standards pris en charge

Par exemple, linstruction Create Table suivante montre comment utiliser le mot-cl OID comme nom
dlment de donnes.
create table t ("oid" numeric)

ABSOLUTE
ACTION
ADD
ALL
ALLOCATE
ALTER
AND
ANY
ARE
AS
ASC
ASSERTION
AT
AUTHORIZATION
AVG
BEGIN
BETWEEN
BINARY
BIT
BIT_LENGTH
BLOB
BOOLEAN
BOTH
BY
CASCADE
CASCADED
CASE
CAST
CATALOG
CHAR
CHARACTER
CHARACTER_LENGTH
CHAR_LENGTH
CHECK
CHR
CLOSE
COALESCE
COLLATE
COLLATION
COLUMN

COMMIT
CONNECT
CONNECTION
CONSTRAINT
CONSTRAINTS
CONTINUE
CONVERT
CORRESPONDING
COUNT
CREATE
CROSS
CURDATE
CURRENT
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
CURRENT_USER
CURSOR
CURTIME
CURTIMESTAMP
DATE
DATEVAL
DAY
DAYNAME
DAYOFWEEK
DEALLOCATE
DEC
DECIMAL
DECLARE
DEFAULT
DEFERRABLE
DEFERRED
DELETE
DESC
DESCRIBE
DESCRIPTOR
DIAGNOSTICS
DISCONNECT
DISTINCT
DOMAIN

DOUBLE
DROP
ELSE
END
END_EXEC
ESCAPE
EVERY
EXCEPT
EXCEPTION
EXEC
EXECUTE
EXISTS
EXTERNAL
EXTRACT
FALSE
FETCH
FIRST
FLOAT
FOR
FOREIGN
FOUND
FROM
FULL
GET
GLOBAL
GO
GOTO
GRANT
GROUP
HAVING
HOUR
IDENTITY
IMMEDIATE
IN
INDEX
INDICATOR
INITIALLY
INNER
INPUT
INSENSITIVE

NSERT
INT
INTEGER
INTERSECT
INTERVAL
INTO
IS
ISOLATION
JOIN
KEY
LANGUAGE
LAST
LEADING
LEFT
LENGTH
LEVEL
LIKE
LOCAL
LONGVARBINARY
LOWER
LTRIM
MATCH
MAX
MIN
MINUTE
MODULE
MONTH
MONTHNAME
NAMES
NATIONAL
NATURAL
NCHAR
NEXT
NO
NOT
NULL
NULLIF
NUMERIC
NUMVAL
OCTET_LENGTH

OF
ON
ONLY
OPEN
OPTION
OR
ORDER
OUTER
OUTPUT
OVERLAPS
PAD
PART
PARTIAL
POSITION
PRECISION
PREPARE
PRESERVE
PRIMARY
PRIOR
PRIVILEGES
PROCEDURE
PUBLIC
READ
REAL
REFERENCES
RELATIVE
RESTRICT
REVOKE
RIGHT
ROLLBACK
ROUND
ROWID
ROWS
RTRIM
SCHEMA
SCROLL
SECOND
SECTION
SELECT
SESSION

59

60

Guide ODBC et JDBC FileMaker

SESSION_USER
SET
SIZE
SMALLINT
SOME
SPACE
SQL
SQLCODE
SQLERROR
SQLSTATE
STRVAL
SUBSTRING
SUM
SYSTEM_USER
TABLE
TEMPORARY
THEN
TIME
TIMESTAMP
TIMESTAMPVAL
TIMEVAL
TIMEZONE_HOUR
TIMEZONE_MINUTE
TO
TODAY
TRAILING
TRANSACTION
TRANSLATE
TRANSLATION
TRIM
TRUE
UNION
UNIQUE
UNKNOWN
UPDATE
UPPER
USAGE
USER
USERNAME
USING

VALUE
VALUES
VARBINARY
VARCHAR
VARYING
VIEW
WHEN
WHENEVER
WHERE
WITH
WORK
WRITE
YEAR
ZONE

Chapitre 8
Informations de rfrence
Correspondances entre les rubriques FileMaker et les types de donnes
ODBC
Le tableau suivant prsente les correspondances entre les types de donnes FileMaker et ODBC standard.
Type de rubrique
FileMaker

Type de donnes ODBC


correspondant aprs
conversion

Texte

SQL_VARCHAR

La longueur maximale dune colonne de texte est de 1 million de


caractres, moins que vous ne fixiez une limite infrieure laide
de loption Nombre maximal de caractres pour la rubrique de type
texte dans FileMaker. FileMaker renvoie les chanes vides sous la
forme NULL.

Nombre

SQL_DOUBLE

Le type de rubrique nombre de FileMaker peut contenir des valeurs


positives ou ngatives comprises entre 10-308 et 10+308, avec un
maximum de 15 chiffres significatifs.

Date

SQL_DATE

Heure

SQL_TIME

Horodatage

SQL_TIMESTAMP

Conteneur

SQL_LONGVARBINARY

Calcul

Prcisions sur ce type de donnes

Le type de rubrique heure de FileMaker peut contenir lheure du


jour ou un intervalle de temps. Un intervalle de temps est renvoy
sous forme dheure du jour, moins quil ne soit infrieur 0 ou
suprieur 24 (auquel cas la valeur renvoye est 0).

Depuis une rubrique Multimdia, vous pouvez rcuprer des


donnes binaires, des informations des informations de rfrence
de fichier ou des donnes appartenant un type de fichier
particulier.
Au sein dune instruction SELECT, utilisez la fonction CAST pour
rcuprer les informations de rfrence du fichier, de mme que la
fonction GetAs pour rcuprer les donnes dun type de fichier en
particulier.
Le rsultat est converti dans le type de donnes ODBC
correspondant.

La longueur des chanes est facultative dans les dclarations de table. Toutes les chanes sont stockes
et extraites au format Unicode.
Remarque Les rubriques multivalues de FileMaker sont prises en charge de la mme faon que les
tableaux. Exemples :
INSERT INTO mytable(repField[3]) VALUES (this is rep 3)
SELECT repField[1], repField[2] FROM mytable

62

Guide ODBC et JDBC FileMaker

Correspondances entre les rubriques FileMaker et les types de donnes


JDBC
Le pilote client JDBC emploie les correspondances suivantes pour convertir des types de donnes FileMaker
en types de donnes SQL JDBC. (Pour plus dinformations sur ces types, consultez les pages Web de
documentation du JDK 1.5 disponibles ladresse www.javasoft.com.)
Type de rubrique
FileMaker

Type SQL JDBC correspondant aprs conversion

Texte

java.sql.Types.VARCHAR

Nombre

java.sql.Types.DOUBLE

Date

java.sql.Types.DATE

Heure

java.sql.Types.TIME

Horodatage

java.sql.Types.TIMESTAMP

Multimdia

java.sql.Types.BLOB

Calcul

varie suivant le type de donnes du rsultat du calcul

Le pilote client JDBC convertit le type de donnes calcul de FileMaker en type SQL JDBC correspondant
au rsultat du calcul. Par exemple, le pilote client JDBC convertit un calcul FileMaker qui gnre un rsultat
de type horodatage en type java.sql.Types.TIMESTAMP.

Messages derreur ODBC et JDBC


Cette annexe prsente le format de base des messages derreur que vous pouvez recevoir en travaillant avec
FileMaker et ODBC/JDBC.

Messages derreur ODBC


Si vous obtenez des messages derreur, ils peuvent provenir de diffrentes sources :

1 Pilote ODBC
1 FileMaker et port d'coute FileMaker xDBC
Messages derreur FileMaker ODBC
Si une erreur se produit au niveau du port d'coute FileMaker ou de la source de donnes, le message prcise le nom
de cette source de donnes et se prsente de la faon suivante :
[FileMaker] [FileMaker ODBC] message
Une source de donnes FileMaker, par exemple, peut renvoyer un message derreur comme celui-ci :
[FileMaker] [FileMaker ODBC] Nom d'utilisateur/mot de passe non valide
Un message derreur de ce type signale que vous avez effectu une opration incorrecte dans le systme de
base de donnes. Pour plus dinformations, consultez votre documentation FileMaker ou demandez conseil
ladministrateur de la base de donnes.
Les messages suivants mentionnant des erreurs dans des colonnes diffrentes saffichent parfois dans un
nom de colonne incorrect.

Chapitre 8

Informations de rfrence

63

Messages derreur JDBC


Le pilote FileMaker JDBC signale les erreurs lapplication lorigine de lappel en renvoyant des
exceptions SQL. Si vous obtenez des messages derreur, ils peuvent provenir de diffrentes sources :

1 le pilote JDBC ;
1 FileMaker et port d'couter FileMaker xDBC
Messages derreur FileMaker JDBC
Si une erreur se produit au niveau du port d'coute FileMaker ou de la source de donnes, le message prcise le nom
de cette source de donnes et se prsente de la faon suivante :
[FileMaker] [FileMaker JDBC] message
Une source de donnes FileMaker, par exemple, peut renvoyer un message derreur comme celui-ci :
[FileMaker] [FileMaker JDBC] Nom d'utilisateur/mot de passe non valide
Un message derreur de ce type signale que vous avez effectu une opration incorrecte dans le systme de
base de donnes. Pour plus dinformations, consultez votre documentation FileMaker ou demandez conseil
ladministrateur de la base de donnes.

64

Guide ODBC et JDBC FileMaker

Index
A

accs distance 9
Accs via ODBC/JDBC, privilge tendu 23
Administrateur de source de donnes ODBC
(Windows) 26
alias de colonne 38
alias de table 38, 39
ALTER TABLE, instruction SQL 47
application cliente, utilisation de FileMaker en tant
que 7

DELETE, instruction SQL 44


dsactivation dun fichier de base de donnes
FileMaker partag 10
donnes binaires
utiliser dans SELECT 42
DROP INDEX, instruction SQL 48

B
base de donnes, DSN 24
base de donnes, nombre de connexions prises en
charge 9

C
ce mot de passe
avec JDBC 34
avec ODBC 25, 27
chane vide
utiliser dans SELECT 42
cls gnres automatiquement 32
comptes et privilges 23
configuration dune source de donnes FileMaker
via JDBC 34
via ODBC (Mac OS) 26
via ODBC (Windows) 23
configuration requise pour linstallation 15, 29
Configuration rseau requise 10
configuration systme requise 15, 29
conformit avec la norme SQL 37
conformit avec les normes 37
connexions, base de donnes 9
constantes dans les expressions SQL 50
correspondance de types de donnes
pilote client JDBC 62
pilote client ODBC 61
CREATE INDEX, instruction SQL 47
CREATE TABLE, instruction SQL 46
curseur persistant 32
curseurs
dans JDBC 32
dans ODBC 41

E
enregistrement du pilote client JDBC 33
erreurs de syntaxe 58
espaces finaux 51
tendus, privilges 23
exceptions SQL 63
expressions SQL 49
constantes 50
fonctions 53
littraux 50
noms de rubriques 49
notation en virgule flottante ou scientifique 51
oprateurs de caractres 51
oprateurs de dates 51
oprateurs logiques 53
oprateurs numriques 51
oprateurs relationnels 52
ordre de priorit 57

F
fichiers
configuration de laccs 23
organisation sur un seul ordinateur 9
utiliser dans les rubriques Multimdia 43
fichiers bitmap dans les rubriques Multimdia 43
fichiers image dans les rubriques Multimdia 43
fichiers QuickTime dans les rubriques
Multimdia 43
fonction ABS 55
fonction ATAN 55
fonction ATAN2 55
fonction B 55
fonction CAST 43, 61
fonction CEIL 55
fonction CEILING 55
fonction CHR 54
fonction CURDATE 56

66

Guide ODBC et JDBC FileMaker

fonction CURRENT USER 54


fonction CURRENT_DATE 56
fonction CURRENT_TIME 56
fonction CURRENT_TIMESTAMP 56
fonction CURRENT_USER 54
fonction CURTIME 56
fonction CURTIMESTAMP 56
fonction DATE 56
fonction DATEVAL 56
fonction DAY 55
fonction DAYNAME 54
fonction DAYOFWEEK 55
fonction DEG 55
fonction DEGREES 55
fonction EXP 55
fonction FLOOR 55
fonction GetAs 43, 61
fonction HOUR 55
fonction INT 55
fonction LEFT 54
fonction LEN 55
fonction LN 55
fonction LOG 55
fonction LOWER 54
fonction LTRIM 54
fonction MAX 55
fonction MIN 55
fonction MINUTE 55
fonction MOD 55
fonction MONTH 55
fonction MONTHNAME 54
fonction NUMVAL 55
fonction PI 55
fonction POW 55
fonction RADIANS 56
fonction RIGHT 54
fonction ROUND 56
fonction RTRIM 54
fonction SECOND 56
fonction SIGN 56
fonction SIN 56
fonction SPACE 54
fonction SQRT 56
fonction STRVAL 54
fonction SUBSTR 54
fonction SUBSTRING 54
fonction TAN 56

fonction TIME 54
fonction TIMESTAMPVAL 56
fonction TIMEVAL 54
fonction TODAY 56
fonction TRIM 54
fonction UPPER 54
fonction USERNAME 54
fonction VAL 56
fonction X 56
fonction YEAR 56
fonctions dans les expressions SQL 53
fonctions de catalogue pour ODBC 57
fonctions de chanes 54
fonctions de mtadonnes pour JDBC 58
fonctions statistiques SQL 49
FOR UPDATE, clause SQL 41
formats d'heure 50
formats d'horodatage 50
formats de date 50
formats des messages derreur 62
FROM, clause SQL 39
FULL OUTER JOIN 39

G
GROUP BY, clause SQL 40

H
HAVING, clause SQL 40
hte, DSN 24, 26

I
INNER JOIN 39
INSERT, instruction SQL 44
installation, configuration requise 15, 29
instructions SQL
ALTER TABLE 47
CREATE INDEX 47
CREATE TABLE 46
DELETE 44
DROP INDEX 48
INSERT 44
mots-cls rservs 58
prises en charge par les pilotes clients 37
SELECT 37
UPDATE 45

J
Java, version 29
JDBC
description 31
messages derreur 63
pilote client, description 32
procdure dutilisation 7
JDK (Java Development Kit) 32
jointure 39

L
LEFT JOIN 39
LEFT OUTER JOIN 39
littraux dans les expressions SQL 50

M
Mac OS
Configuration requise pour le pilote client
JDBC 29
Configuration requise pour le pilote client
ODBC 15
cration dune source de donnes 26
vrification de laccs ODBC 27
mises jour et suppressions positionnes 41
mots-cls SQL rservs 58
mots-cls, SQL rservs 58

N
noms de colonne 23
noms de rubriques dans les expressions SQL 49
noms de source de donnes. Voir sources de donnes
NOT NULL (clause SQL) 46
notation en virgule flottante dans les expressions
SQL 51
notation scientifique dans les expressions SQL 51

O
ODBC
conformit avec les normes 37
description 21
messages derreur 62
procdure dutilisation 7
rubriques multivalues 61
ODBC Administrator (Mac OS) 27
oprateur ALL 52
oprateur AND 53
oprateur ANY 52

Index

67

oprateur BETWEEN 52
oprateur DISTINCT 38
oprateur EXISTS 52
oprateur IN 52
oprateur IS NOT NULL 52
oprateur IS NULL 52
oprateur LIKE 52
oprateur NOT 53
oprateur NOT IN 52
oprateur NOT LIKE 52
oprateur OR 53
oprateurs de caractres dans les expressions
SQL 51
oprateurs de dates dans les expressions SQL 51
oprateurs logiques dans les expressions SQL 53
oprateurs numriques dans les expressions SQL 51
oprateurs relationnels dans les expressions SQL 52
ORDER BY, clause SQL 41
ordre de priorit des oprateurs dans les expressions
SQL 57
OUTER JOIN 39
outils RAD (Rapid Application Development) 31

P
partage, configuration de ODBC/JDBC 23
pilote client JDBC
classe et point daccs principal du pilote 32
enregistrement avec le gestionnaire de pilotes
JDBC 33
fonctions de mtadonnes 58
prise en charge Unicode 37
spcification de lURL JDBC 32
tables externes 37
types de donnes, correspondance 62
vrification de laccs 35
pilote client ODBC
fonctions de catalogue 57
prise en charge Unicode 37
tables externes 37
types de donnes, correspondance 61
vrification de laccs (Mac OS) 27
vrification de laccs (Windows) 25
pilotes
dsinstallation de lancien 10
port, spcification pour JDBC 30
prsentation
configuration des privilges et du partage 23
utilisation dODBC et de JDBC avec
FileMaker 7

68

Guide ODBC et JDBC FileMaker

PREVENT INDEX CREATION 48


prise en charge de Savepoint 32
prise en charge Unicode 37
privilges tendus 23
Produits FileMaker 9
proprits de pilote
pilote client JDBC 34
pilote client ODBC (MacOS) 26
pilote client ODBC (Windows) 23

R
RIGHT JOIN 39
RIGHT OUTER JOIN 39
rubrique Multimdia FileMaker
avec l'instruction INSERT 45
avec linstruction SELECT 42
avec linstruction UPDATE 46
correspondance de types de donnes JDBC 62
correspondance de types de donnes ODBC 61
rubriques
correspondance avec JDBC 62
correspondance avec ODBC 61
rubriques multivalues 61

S
SELECT, instruction SQL 37
chane vide 42
donnes binaires 42
type de donnes Conteneur 42
source de donnes
configuration pour accs via ODBC ( Mac
OS) 26
configuration pour laccs via JDBC 34
configuration pour laccs via ODBC
(Windows) 23
dsactivation dun fichier de base de donnes
FileMaker partag 10
une source de donnes pour chaque fichier de base
de donnes FileMaker 10
vrification de l'accs via ODBC (Mac OS) 27
vrification de laccs via JDBC 35
vrification de laccs via ODBC (Windows) 25
source de donnes serveur 26
sources de donnes
cration (Mac OS) 26
cration (Windows) 23
une par fichier 10
sous-requtes 44
SPI JDBC 32

SQL, expressions 49
SQL, fonctions statistiques 49
SQL-92 37

T
tables externes 37
test daccs
pilote client JDBC 35
pilote client ODBC (MacOS) 27
pilote client ODBC (Windows) 25
type de donnes ARRAY 32
type de donnes boolen 32
type de donnes CLOB 32
type de donnes Conteneur
utiliser dans CREATE TABLE 47
utiliser dans SELECT 42
type de donnes DATALINK 32
type de donnes REF 32
type de donnes SQL_C_WCHAR 37
types de donnes, correspondance
pilote client JDBC 62
pilote client ODBC 61

U
UNION (oprateur SQL) 40
UPDATE, instruction SQL 45
URL (Uniform Resource Locator) pour le pilote
client JDBC 32

V
valeur non nulle dans les colonnes 45
valeur nulle 45, 61
VALUES (clause SQL) 44
vrification de laccs
pilote client JDBC 35
pilote client ODBC (MacOS) 27
pilote client ODBC (Windows) 25

W
WHERE, clause SQL 39
Windows
Configuration requise pour le pilote client
JDBC 29
Configuration requise pour le pilote client
ODBC 15
cration dune source de donnes 23
vrification de laccs ODBC 25

Vous aimerez peut-être aussi