- Ordinateurs et électronique
- Logiciel
- Services informatiques
- Logiciel de base de données
- Filemaker
- Pro 11
- Mode d'emploi
▼
Scroll to page 2
of
68
FileMaker 11 ® Guide ODBC et JDBC © 2004-2010 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054, Etats-Unis FileMaker est une marque de FileMaker, Inc., déposée 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 propriété de leurs détenteurs respectifs. La documentation de FileMaker est protégée par la législation sur les droits d’auteur. Vous n’êtes pas autorisé à créer des copies supplémentaires ni à distribuer cette documentation sans l’accord écrit de FileMaker. Vous devez posséder une copie sous licence valide de FileMaker pour utiliser cette documentation. Toutes les personnes, sociétés, adresses email et URL citées dans les exemples sont fictives et toute ressemblance avec des personnes et des sociétés existantes ne serait que pure coïncidence. La liste des auteurs est disponible dans les documents Remerciements fournis avec ce logiciel. Les produits tiers et les adresses URL sont mentionnés à titre indicatif uniquement, et non pas à titre de recommandation. FileMaker, Inc. se dégage de toute responsabilité concernant les performances de ces produits. Pour plus de détails, consultez notre site Web à l’adresse www.filemaker.fr. Edition : 01 Table des matières 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 données ODBC Ajout de tables ODBC au graphe de liens Utilisation d’une base de données FileMaker en tant que source de données Accès à une base de données FileMaker Pro hébergée Limites avec des outils tiers Configuration requise pour une utilisation en réseau Mise à jour de fichiers à partir de versions antérieures Installation des pilotes actuels 7 7 8 8 8 9 9 10 10 10 10 Chapitre 2 Accès aux sources de données SQL externes Importation de données ODBC Exécution d'instructions SQL pour interagir avec des sources de données via ODBC Utilisation de tables ODBC dans le graphe de liens Sources de données 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 matérielles 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 réseau 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 4 Guide ODBC et JDBC FileMaker Chapitre 4 Utilisation d’ODBC pour partager des données FileMaker A propos d’ODBC Utilisation du pilote client ODBC Présentation de l’accès à un fichier de base de données FileMaker Accès à un fichier de base de données FileMaker depuis une application Windows Spécification des propriétés de pilote client ODBC pour une source de données FileMaker (Windows) Vérification de l’accès via ODBC (Windows) Accès à un fichier de base de données FileMaker depuis une application Mac OS Spécification des propriétés du pilote client ODBC pour une source de données FileMaker (Mac OS) Vérification de l'accès 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 réseau Installation du pilote client JDBC Utilisation du pilote client JDBC 29 29 29 30 Chapitre 6 Utilisation de JDBC pour partager des données FileMaker A propos de JDBC Utilisation du pilote client JDBC A propos du pilote client JDBC Utilisation d’une URL JDBC pour la connexion à une base de données Spécification des propriétés du pilote dans le sous-nom de l’URL Solutions possédant plusieurs fichiers de bases de données FileMaker Vérification de l’accès via JDBC 31 31 32 32 34 34 35 | Table des matières 5 Chapitre 7 Standards pris en charge Prise en charge des caractères Unicode instructions SQL SELECT, instruction clauses SQL Clause FROM Clause WHERE Clause GROUP BY Clause HAVING Opérateur 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 Opérateurs numériques Opérateurs de caractères Opérateurs de dates Opérateurs relationnels Opérateurs logiques Fonctions Fonctions qui renvoient des chaînes de caractères Fonctions qui renvoient des nombres Fonctions qui renvoient des dates Ordre de priorité des opérateurs Fonctions de catalogue ODBC Fonctions de métadonnées JDBC Mots-clés SQL réservés 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 6 Guide ODBC et JDBC FileMaker Chapitre 8 Informations de référence Correspondances entre les rubriques FileMaker et les types de données ODBC Correspondances entre les rubriques FileMaker et les types de données JDBC Messages d’erreur ODBC et JDBC Messages d’erreur ODBC Messages d’erreur JDBC 61 62 62 62 63 Index 65 Chapitre 1 Introduction Ce guide décrit comment utiliser le logiciel FileMaker® en tant qu'application cliente ODBC et en tant que source de données pour des applications ODBC et JDBC. Le tableau suivant donne un aperçu de l’utilisation d’ODBC et de JDBC avec le logiciel FileMaker. Que voulez-vous faire ? Comment le faire ? 1 Utiliser le logiciel FileMaker Produit 1. De façon interactive via le graphe de liens 2. Unique, statique via importation ODBC 1 Accéder à des données ODBC ou menu Fichier > Ouvrir. Egalement, l’action de script Importer enregistrements stockées dans une source de et l’action de script Exécuter SQL. données SQL externe. 1 1 1 1 1 Utiliser une base de données 1 FileMaker Pro 1 FileMaker Pro Advanced 1 FileMaker Server Advanced comme application cliente ODBC. FileMaker en tant que source de données 1. Requêtes SQL 2. ODBC et JDBC 1 Partager des données 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 d’informations sur l’utilisation d’ODBC et de JDBC avec les versions antérieures de FileMaker Pro, consultez le site www.filemaker.fr/support/product/documentation.html. 1 Ce guide part de l’hypothèse que vous êtes familiarisé avec les principes d’utilisation de base d’ODBC et de JDBC et de construction de requêtes SQL. Pour plus d’informations, consultez un livre spécialisé. 1 Ce guide parle indifféremment de « FileMaker Pro » pour faire référence à FileMaker Pro et à FileMaker Pro Advanced, sauf quand il décrit des fonctions propres à FileMaker Pro Advanced. Remarque Vous pouvez télécharger la version PDF de la documentation de FileMaker à l’adresse 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 d’applications (API). ODBC est une API pour les applications rédigées 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 données et de services de base de données, notamment FileMaker Pro et FileMaker Server Advanced. Toutes les applications prenant en charge ODBC et JDBC reconnaissent un sous-ensemble commun d’instructions SQL (Structured Query Language). Avec SQL, vous pouvez utiliser d’autres applications (telles que des tableurs, des traitements de texte et des outils de génération de rapports) pour afficher, analyser et modifier des données. 8 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 données. Application cliente Gestionnaire de pilotes Client Pilote Client Pilote Le logiciel FileMaker peut faire office d'application cliente ou de source de données. Utilisation du logiciel FileMaker comme application cliente ODBC En tant qu'application cliente ODBC, le logiciel FileMaker peut accéder aux données de sources de données SQL externes. Le logiciel FileMaker se connecte à la source de données SQL externe à l'aide du pilote client correspondant à la source de données ODBC, puis importe les données ODBC ou utilise les tables ODBC dans le graphe de liens. Importation de données ODBC Vous pouvez importer des données ODBC selon l'une des méthodes suivantes : 1 depuis le menu Fichier en précisant une source de données ODBC et en saisissant des instructions SQL dans la boîte de dialogue Générateur de requête SQL de FileMaker Pro ; 1 en créant un script FileMaker utilisant l'action de script Importer enregistrements ou l'action de script Exécuter SQL. Quelle que soit la méthode choisie, vous devez saisir les instructions SQL vous-même. Il convient donc de connaître les instructions SQL prises en charge ainsi que leur syntaxe pour votre source de données ODBC. Puisque vous rédigez les instructions SQL vous-même, vous pouvez importer des données ODBC depuis n'importe quelle source de données 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 données SQL externes et les utiliser à peu près de la même façon que vous travaillez avec les données du fichier de base de données FileMaker actif. Par exemple, vous pouvez : 1 créer des tables dans le graphe de liens pour des sources de données ODBC ; 1 ajouter des rubriques supplémentaires aux tables ODBC pour exécuter des calculs non stockés ou pour effectuer un récapitulatif des données des tables ODBC ; 1 ajouter, modifier et supprimer des données externes de manière interactive ; 1 créer des liens entre les rubriques des tables FileMaker et les rubriques (ou « colonnes ») des tables ODBC. Puisque FileMaker Pro génère des instructions SQL utilisées pour communiquer avec une table ODBC ajoutée au graphe de liens, vous êtes limité aux sources de données Oracle, SQL Server et MySQL spécifiques prises en charge par FileMaker Pro dans le graphe de liens. Remarque Vous ne pouvez pas modifier le schéma de sources de données ODBC externes à l'aide de FileMaker Pro. Le Chapitre 2, « Accès aux sources de données SQL externes » décrit comment utiliser le logiciel FileMaker comme application cliente ODBC. Chapitre 1 | Introduction 9 Utilisation d’une base de données FileMaker en tant que source de données En tant que source de données, les données FileMaker sont partagées avec des applications compatibles ODBC et JDBC. L'application se connecte à la source de données FileMaker à l'aide du pilote client FileMaker, crée et exécute les requêtes SQL à l'aide d'ODBC ou de JDBC et traite les données récupérées dans la solution de base de données FileMaker. Accès à une base de données FileMaker Pro hébergée Avec FileMaker Server Advanced ou FileMaker Pro, vous pouvez héberger un fichier de base de données FileMaker en tant que source de données et partager vos données avec d’autres applications à l’aide d’ODBC et de JDBC. Le tableau suivant décrit les possibilités offertes par chaque produit FileMaker. Ce produit FileMaker Permet FileMaker Server Advanced Jusqu’à 50 connexions et prend en charge l’accès local (même ordinateur) et l’accès distant (pour les systèmes intermédiaires tels que les serveurs Web et pour l’accès aux clients distants à partir d’applications de bureautique). FileMaker Pro Jusqu’à neuf connexions et ne prend en charge que l’accès local (même ordinateur). Si votre solution de base de données FileMaker utilise plusieurs fichiers de base de données FileMaker, tous ces fichiers devront être enregistrés sur le même ordinateur. Les modules ODBC et JDBC dont vous avez besoin pour partager vos données avec d’autres applications sont installés avec FileMaker Server Advanced et FileMaker Pro. Pour accéder à un fichier de base de données FileMaker hébergé, vous devez installer le pilote client ODBC ou JDBC correspondant. Installez le pilote client sur l'ordinateur où est installée l’application tierce. Ce guide explique comment les pilotes clients ODBC et JDBC utilisés avec FileMaker Pro et FileMaker Server Advanced prennent en charge les standards de l’industrie 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 nécessaires pour accéder à une source de données FileMaker à l'aide d'ODBC. 1 Le chapitre Chapitre 4, « Utilisation d’ODBC pour partager des données FileMaker » décrit comment utiliser le pilote client FileMaker ODBC pour se connecter à une source de données FileMaker à partir d’une autre application. 1 Le Chapitre 5, « Installation de pilotes clients FileMaker JDBC » explique comment installer les fichiers de pilote nécessaires pour accéder à une source de données FileMaker à l'aide de JDBC. 1 Le Chapitre 6, « Utilisation de JDBC pour partager des données FileMaker » décrit comment utiliser le pilote client FileMaker JDBC avec une application ou une applet Java qui se connecte à une source de données FileMaker. 10 Guide ODBC et JDBC FileMaker 1 Le Chapitre 7, « Standards pris en charge » décrit les instructions SQL que les pilotes clients ODBC et JDBC prennent en charge quand ils sont utilisés avec FileMaker Pro et FileMaker Server Advanced. Important Si vous désactivez le partage ODBC/JDBC après l’avoir activé, une source de données hébergée par FileMaker ServerAdvanced ou FileMaker Pro cesse immédiatement d’être disponible. L’administrateur de base de données n’a pas la possibilité d’avertir les applications clientes ODBC et JDBC quant à la disponibilité de la source de données (il ne peut communiquer qu’avec des clients de fichiers de base de données FileMaker). Aucune erreur n’est signalée et l’application cliente doit avertir les utilisateurs que la source de données n’est plus disponible et que les transactions ne peuvent pas être effectuées. Si une application cliente tente de se connecter à un fichier de base de données FileMaker qui n’est 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 données d'une source de données FileMaker, n'utilisez pas les données d'une rubrique statistique. Les données des rubriques de type Statistique ne doivent pas être modifiées dans Microsoft Access et la valeur des données affichée dans Microsoft Access peut être incorrecte. Configuration requise pour une utilisation en réseau Vous devez disposer d’un réseau TCP/IP pour utiliser FileMaker Server Advanced pour héberger un fichier de base de données FileMaker en tant que source de données par l’intermédiaire d’un réseau. FileMaker Pro ne prend en charge que l’accès local (même ordinateur). Mise à jour de fichiers à partir de versions antérieures Installation des pilotes actuels Si vous avez installé un pilote depuis les versions précédentes 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 antérieures 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 créer un nom de source de données pour chaque fichier de base de données FileMaker auquel vous souhaitez accéder en tant que source de données. Si vous avez déjà configuré un accès via un nom de source de données qui admet que les tables soient situées dans différents fichiers de base de données FileMaker, vous devez consolider ces tables sous la forme d’un fichier de base de données unique (ou créer plusieurs sources de données). Chapitre 2 Accès aux sources de données SQL externes En tant qu'application cliente ODBC, le logiciel FileMaker peut accéder aux données de sources de données SQL externes. Le logiciel FileMaker se connecte à la source de données SQL externe à l'aide du pilote client correspondant à la source de données ODBC, puis importe les données ODBC ou utilise les tables ODBC dans le graphe de liens. Que vous importiez des données ODBC ou que vous utilisiez des tables ODBC dans le graphe de liens, vous devez configurer un pilote pour la source de données ODBC que vous utilisez. Par exemple, pour accéder aux enregistrements d’une base de données Oracle, vous devez configurer un pilote client Oracle. Importation de données ODBC Lorsque vous importez des données ODBC, vous devez configurer un pilote client ODBC pour la source de donnés SQL externe sur l'ordinateur client. FileMaker Pro Gestionnaire de pilotes Client Pilote Données SQL Source Après avoir configuré un pilote client ODBC, vous pouvez interagir avec les enregistrements, importer des enregistrements dans un fichier de base de données FileMaker Pro existant ou créer un nouveau fichier de base de données FileMaker Pro à partir d'une source de données ODBC (telle qu’une base de données Oracle ou Microsoft Access). Vous commencez par accéder à la source de données à partir de laquelle vous souhaitez effectuer l'importation. Puis vous créez une requête pour les enregistrements à importer depuis la source de données. Enfin, si vous importez des données dans un fichier existant, vous mettez en correspondance les rubriques de votre source de données avec celles de votre fichier de base de données FileMaker Pro. Vous pouvez accéder à votre source de données ODBC depuis le menu Fichier, à l'aide de l'action de script Importer enregistrements ou de l'action de script Exécuter SQL. Pour importer des données ODBC, appliquez le processus général suivant : 1 Installez et configurez des pilotes ODBC spécifiques aux sources de données externes auxquelles vous souhaitez accéder. 1 Sur l'ordinateur hébergeant le fichier FileMaker Pro actif, définissez un nom de source de données système pour chaque source de données ODBC à laquelle vous souhaitez accéder. 1 Déterminez éventuellement des considérations supplémentaires pour les sources de données ODBC auxquelles vous souhaitez accéder (par exemple, décidez si les utilisateurs sont invités à saisir un nom d'utilisateur et un mot de passe). 12 Guide ODBC et JDBC FileMaker 1 Dans FileMaker Pro, effectuez l’une des opérations suivantes : 1 Pour importer dans un fichier FileMaker Pro existant, choisissez le menu Fichier > Importer des enregistrements > Source de données ODBC. 1 Pour créer un fichier FileMaker Pro à partir des enregistrements de la source de données, choisissez le menu Fichier > Ouvrir. Dans la boîte de dialogue Ouvrir fichier, choisissez Source de données ODBC dans la zone Fichiers de type (Windows) ou Afficher (Mac OS). Choisissez votre source de données, saisissez le nom d'utilisateur et le mot de passe (le cas échéant), puis cliquez sur OK pour ouvrir la boîte de dialogue Générateur de requête SQL de FileMaker Pro. La boîte de dialogue Générateur de requête SQL de FileMaker Pro vous permet de créer une requête. Sélectionnez la table à partir de laquelle vous souhaitez effectuer l'importation, puis sélectionnez les colonnes précises à utiliser dans votre requête SQL. Utilisez l'onglet WHERE pour créer des critères de recherche et l'onglet ORDER BY pour préciser un ordre de tri. Vous pouvez également entrer une instruction SQL directement dans la boîte de dialogue Générateur de requête SQL. Vous pouvez exécuter la requête immédiatement ou utiliser l'action de script Importer enregistrements ou Exécuter SQL pour exécuter une requête dans le cadre d'un script FileMaker. Remarque L'importation ODBC, l'action de script Exécuter SQL et les sources de données SQL externes ne sont pas prises en charge dans les solutions d'exécution créées avec FileMaker Pro Advanced. Consultez l'aide de FileMaker Pro pour plus d'informations sur l'importation de données, l'utilisation de la boîte de dialogue Générateur de requête SQL et la création de scripts FileMaker. Exécution d'instructions SQL pour interagir avec des sources de données via ODBC Outre l'importation de données dans un fichier de base de données FileMaker Pro via ODBC, vous pouvez également interagir avec les sources de données à l'aide d'instructions SQL grâce à l'action de script Exécuter SQL. Vous pouvez utiliser n'importe quelle instruction SQL prise en charge par la source de données, telle que INSERT, UPDATE et DELETE. Il vous est également possible d'utiliser des instructions SQL permettant d'effectuer d'autres opérations que la simple importation de données dans un fichier de base de données FileMaker Pro. Par exemple, vous pouvez exécuter des instructions SQL pour ajouter des enregistrements à une table de base de données dans SQL Server en utilisant les informations d’un fichier de base de données FileMaker Pro. Consultez l'aide de FileMaker Pro pour plus d'informations sur la création de scripts FileMaker utilisant l'action de script Exécuter 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 données SQL externes et les utiliser à peu près de la même façon que vous travaillez avec les données du fichier de base de données FileMaker actif. Chapitre 2 | Accès aux sources de données SQL externes 13 Lorsque vous utilisez FileMaker Pro ou FileMaker Server comme hôte d'une solution incluant des tables ODBC dans le graphe de liens, vous devez configurer le pilote client ODBC pour la source de données SQL externe sur l'ordinateur hôte. FileMaker Pro, utilisateur FileMaker Pro, utilisateur FileMaker Pro ou FileMaker Server, ordinateur hôte Gestionnaire de pilotes Client Pilote Données SQL Source FileMaker Pro, utilisateur Sources de données prises en charge dans FileMaker 11 En tant qu'application cliente ODBC, FileMaker prend en charge les sources de données 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 données FileMaker Pro afin qu'elle puisse accéder aux données des sources de données ODBC prises en charge : 1 Installez et configurez des pilotes ODBC spécifiques aux sources de données externes auxquelles vous souhaitez accéder. 1 Sur l'ordinateur hébergeant le fichier FileMaker Pro actif, définissez un nom de source de données système pour chaque source de données ODBC à laquelle vous souhaitez accéder. 1 Déterminez éventuellement des considérations supplémentaires pour les sources de données ODBC auxquelles vous souhaitez accéder (par exemple, décidez si les utilisateurs sont invités à 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 données ODBC dans le graphe de liens du fichier FileMaker Pro actif. 1 Ajoutez des rubriques aux modèles du fichier FileMaker Pro pour afficher les données externes. 1 Si vous le souhaitez, ajoutez des rubriques complémentaires aux tables externes et aux modèles pour afficher les résultats des calculs et des récapitulatifs basés sur les données stockées dans les sources de données ODBC externes. Consultez l'aide de FileMaker Pro pour obtenir des étapes détaillées et des informations supplémentaires sur la configuration d'un pilote client ODBC, la connexion aux sources de données ODBC, la modification des sources de données 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 nécessaire pour accéder à FileMaker en tant que source de données depuis des applications tierces et personnalisées 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 téléchargé par voie électronique dans le dossier xDBC. Les dernières versions des pilotes clients sont également disponibles à l'adresse suivante : www.filemaker.fr/support/technologies Si vous devez héberger un fichier de base de données FileMaker à l’aide de FileMaker Server Advanced, mettez les pilotes clients à la disposition des utilisateurs distants. Après avoir installé le pilote client requis, vous pouvez configurer le pilote pour accéder à une source de données FileMaker et construire des requêtes SQL (Structured Query Language) pour interagir avec les données. Configurations matérielles et logicielles requises Pour installer et utiliser les pilotes clients ODBC, vous devez être équipé au minimum du matériel 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 recommandés 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 recommandés 1 Mac OS X version 10.5.7 ou 10.6 (le logiciel peut aussi fonctionner avec des versions plus récentes certifiées par FileMaker) Configuration requise pour une utilisation en réseau Si vous devez accéder à une source de données FileMaker hébergée sur un autre ordinateur, vous devez disposer d’un accès réseau 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 système d'exploitation Windows 32 bits. 16 Guide ODBC et JDBC FileMaker Pour installer le pilote client ODBC 1. Effectuez l’une des opérations suivantes : 1 Si vous avez reçu le logiciel par voie électronique, double-cliquez sur l'icône d'installation (fichier .exe). 1 Si vous disposez d'un disque d'installation, insérez-le dans le lecteur. 2. Dans la fenêtre 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 affichées à l’écran. 6. Lorsque vous avez terminé l’installation, cliquez sur Fermer. Par défaut, le pilote client ODBC est installé dans le dossier suivant : c:\windows\system32 Le pilote client ODBC, FileMaker ODBC, est désormais disponible pour configurer l’accès à une source de données FileMaker. Configuration des pilotes clients (Windows) Avant d’utiliser une application cliente pour accéder à une source de données FileMaker, vous devez configurer un pilote client pour la source de données. Les paramètres de configuration identifient le pilote client que vous utilisez, l’emplacement de la source de données et la manière dont vous souhaitez vous connecter. Important Lorsque vous utilisez un pilote client FileMaker, vous devez réserver le port 2399. Pour configurer le pilote client ODBC : 1. Dans le Panneau de configuration de Windows, ouvrez Outils d’administration > Sources de données (ODBC). 1 Sous Windows XP, l’option Outils d’administration apparaît dans la catégorie Performances et maintenance. 1 Sous Windows Vista et Windows 7, l'option Outils d'administration apparaît dans la catégorie Système et sécurité. L'Administrateur de sources de données ODBC s'ouvre. 2. Sélectionnez l'onglet Sources de données système ou Sources de données utilisateur. 3. Cliquez sur Ajouter. La boîte de dialogue Créer une nouvelle source de données s'ouvre. 4. Sélectionnez FileMaker ODBC, puis cliquez sur Terminer. La boîte 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 aisément identifiable par les autres utilisateurs accédant à la source de données FileMaker Pro. Dans Description, entrez, si vous le souhaitez, une description de la source de données FileMaker. Cliquez sur Suivant. 7. Dans Hôte : 1 Si vous vous connectez à un fichier de base de données hébergé 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 données hébergé par FileMaker Server Advanced par l’intermédiaire d’un réseau, tapez l’adresse IP du serveur FileMaker. Si vous avez activé le partage via ODBC/JDBC dans l'application hôte, vous pouvez sélectionner Connectez-vous à l'hôte 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 données. 8. Pour Base de données, sélectionnez une base de données dans la liste des bases de données disponibles ou tapez le nom de fichier de la base de données utilisée comme source de données. Remarque Pour les bases de données hébergées par FileMaker Server Advanced, vous pouvez filtrer la liste des bases de données sur le paramètre Filtre d'affichage du fichier. Pour plus d'informations, consultez l'Aide de FileMaker Server. Si vous avez besoin d'un traitement spécial réservé aux caractères autres qu'anglais, cliquez sur Langue avancée. La boîte de dialogue Options de langue avancées s'ouvre. 1 Pour détecter automatiquement les paramètres de langue, sélectionnez l'option Détectez auto. paramètres de langue pour application. 1 Pour préciser le paramètre de langue, décochez l'option Détectez auto. paramètres de langue pour application et sélectionnez le paramètre système à utiliser. Si vous souhaitez créer un fichier journal pour les requêtes dont l'exécution est longue, sélectionnez l'option Enregistrez requêtes longues dans fichier journal, puis entrez le nom du fichier journal. Cliquez sur Terminer pour enregistrer les informations de votre source de données. 9. Vérifiez les informations relatives à votre DSN FileMaker. 1 Cliquez sur Test pour vérifier que vous avez correctement configuré le pilote client ODBC pour l'accès à la source de données FileMaker. Si vous obtenez un message d'erreur, vous pouvez corriger les informations de connexion. Vous devrez peut-être également vérifier que le fichier de base de données FileMaker est hébergé et disponible, que le compte FileMaker indiqué utilise un jeu de privilèges Accès via ODBC/JDBC et que l'application hôte (FileMaker Pro ou FileMaker Server Advanced) a été configurée pour le partage via ODBC/JDBC. 1 Cliquez sur Terminé pour enregistrer les informations de votre source de données. 18 Guide ODBC et JDBC FileMaker Installation du pilote client ODBC (Mac OS) Pour installer le pilote client ODBC 1. Effectuez l’une des opérations suivantes : 1 Si vous avez reçu le logiciel par voie électronique, double-cliquez sur l'icône d'image disque (fichier .dmg). 1 Si vous disposez d'un disque d'installation, insérez-le dans le lecteur. 2. Dans la fenêtre 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 affichées à l’écran. 6. Lorsque vous avez terminé l’installation, cliquez sur Fermer. Le pilote client ODBC est installé dans le dossier suivant : /Bibliothèque/ODBC Remarque Vous ne pouvez pas modifier le dossier d'installation du pilote client ODBC. Le pilote client ODBC, FileMaker ODBC, est désormais disponible pour configurer l’accès à une source de données FileMaker. Configuration des pilotes clients (Mac OS) Avant d’utiliser une application cliente pour accéder à une source de données FileMaker, vous devez configurer un pilote client pour la source de données. Les paramètres de configuration identifient le pilote client que vous utilisez, l’emplacement de la source de données et la manière 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 intégré au système 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 réserver 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. Sélectionnez l'onglet DSN système ou DSN utilisateur, puis cliquez sur Ajouter. La boîte de dialogue de sélection d'un pilote s'ouvre. Chapitre 3 | Installation de pilotes clients FileMaker ODBC 19 3. Sélectionnez FileMaker ODBC, puis cliquez sur OK. La boîte de dialogue Configuration DSN FileMaker s'ouvre. 4. Cliquez sur Continuer. 5. Dans la zone Nom, entrez un nom aisément identifiable par les autres utilisateurs accédant à la source de données FileMaker Pro. Dans Description, entrez, si vous le souhaitez, une description de la source de données FileMaker. Cliquez sur Continuer. 6. Dans Hôte : 1 Si vous vous connectez à un fichier de base de données hébergé 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 données hébergé par FileMaker Server Advanced par l’intermédiaire d’un réseau, tapez l’adresse IP du serveur FileMaker. Si vous avez activé le partage via ODBC/JDBC dans l'application hôte, vous pouvez sélectionner Connectez-vous à l'hôte 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 données. 7. Pour Base de données, sélectionnez une base de données dans la liste des bases de données disponibles ou tapez le nom de fichier de la base de données utilisée comme source de données. Remarque Pour les bases de données hébergées par FileMaker Server Advanced, vous pouvez filtrer la liste des bases de données sur le paramètre Filtre d'affichage du fichier. Pour plus d'informations, consultez l'Aide de FileMaker Server. Si vous avez besoin d'un traitement spécial réservé aux caractères autres qu'anglais, cliquez sur Langue avancée. La boîte de dialogue Options de langue avancées s'ouvre. 1 Pour détecter automatiquement les paramètres de langue, sélectionnez l'option Détectez auto. paramètres de langue pour application. 1 Pour préciser le paramètre de langue, décochez l'option Détectez auto. paramètres de langue pour application et sélectionnez le paramètre système à utiliser. Si vous souhaitez créer un fichier journal pour les requêtes dont l'exécution est longue, sélectionnez l'option Enregistrez requêtes longues dans fichier journal, puis entrez le nom du fichier journal. Cliquez sur Terminer pour enregistrer les informations de votre source de données. 8. Vérifiez les informations relatives à votre DSN FileMaker. 1 Cliquez sur Test pour vérifier que vous avez correctement configuré le pilote client ODBC pour l'accès à la source de données FileMaker. Si vous obtenez un message d'erreur, vous pouvez corriger les informations de connexion. Vous devrez peut-être également vérifier que le fichier de base de données FileMaker est hébergé et disponible, que le compte FileMaker indiqué utilise un jeu de privilèges Accès via ODBC/JDBC et que l'application hôte (FileMaker Pro ou FileMaker Server Advanced) a été configurée pour le partage via ODBC/JDBC. 1 Cliquez sur Terminé pour enregistrer les informations de votre source de données. 20 Guide ODBC et JDBC FileMaker Etape suivante Après avoir installé et configuré un pilote client, vous pouvez construire et exécuter des requêtes SQL pour accéder à une source de données FileMaker. Les applications clientes emploient parfois une terminologie différente pour l’accès à une source de données via ODBC. De nombreuses applications contiennent des éléments de menu portant des noms tels que Obtenir des données externes ou Requête SQL. Pour plus de détails, consultez la documentation ou l’aide fournies avec votre application. Pour plus d'informations sur l'utilisation de FileMaker en tant que source de données ODBC, consultez le chapitre 4, « Utilisation d’ODBC pour partager des données FileMaker ». Chapitre 4 Utilisation d’ODBC pour partager des données FileMaker Utilisez le pilote client ODBC pour vous connecter à une source de données FileMaker à partir d’une autre application. L’application qui utilise le pilote client ODBC peut accéder directement aux données d’un fichier de base de données FileMaker. Le pilote client FileMaker ODBC est FileMaker ODBC. Remarque Vous pouvez également utiliser FileMaker Pro en tant qu’application cliente ODBC et la faire interagir avec les enregistrements d’une autre source de données via ODBC à l’aide de SQL. Consultez le chapitre 2, « Accès aux sources de données SQL externes » pour plus de détails sur l'accès à une source de données SQL externe via ODBC. A propos d’ODBC ODBC est une API qui permet aux applications d’accéder à des données provenant de divers systèmes de gestion de bases de données. ODBC donne aux applications clientes un langage commun permettant d’interagir avec des sources de données et des services de base de données. Toutes les applications prenant en charge ODBC reconnaissent un sous-ensemble commun d'instructions SQL (Structured Query Language). SQL permet d’utiliser d’autres applications (telles que des tableurs, des traitements de texte et des outils de génération de rapports) pour afficher, analyser et modifier des données FileMaker. Pour connaître 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 données FileMaker en utilisant le pilote client ODBC. Les instructions SQL sont transmises à l’hôte FileMaker du fichier de base de données et les réponses vous sont ensuite communiquées. Si vous utilisez FileMaker Server Advanced pour héberger un fichier de base de données en tant que source de données, le fichier de base de données peut être situé sur une autre machine (la machine serveur) connectée au réseau, votre application cliente étant placée sur votre machine (la machine cliente). Il s’agit d’une 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 n’importe quelle application compatible ODBC. En partageant votre fichier de base de données FileMaker en tant que source de données, vous pouvez : 1 1 1 1 effectuer des fusions-publipostages avec Microsoft Word ; créer des graphiques avec Microsoft Excel ; déplacer des données FileMaker vers un SGBD tel que Microsoft SQL Server ; analyser vos données FileMaker à l’aide d’outils de requête ou de génération de rapports pour créer des graphiques, définir des requêtes personnalisées et effectuer des analyses avec recherche d’antécédents ; 1 créer une application Microsoft Visual Basic partageant des informations avec FileMaker Pro. Pour partager un fichier de base de données FileMaker en tant que source de données, utilisez FileMaker Pro pour définir les comptes qui auront besoin d’accéder au fichier de base de données. Ensuite, contrôlez l’accès au fichier de base de données en affectant des jeux de privilèges aux comptes, notamment le privilège étendu Accès via ODBC/JDBC. Enfin, activez le partage de données via ODBC/JDBC sur l’application hôte FileMaker Server Advanced ou FileMaker Pro. Pour plus d’informations, consultez l’aide de FileMaker Pro ou de FileMaker Server. Important Les versions antérieures du pilote client FileMaker ODBC ne sont pas compatibles avec FileMaker version 11. Pour vous connecter à un fichier de base de données FileMaker version 11, vous devez installer et configurer le nouveau pilote client ODBC. Remarque Vous pouvez utiliser le Moniteur d’activité sous Mac OS ou le Gestionnaire des tâches sous Windows pour vérifier l’état du processus du port d'écoute FileMaker xDBC afin de confirmer que ce port d'écoute est en cours d’exécution. Une fois le processus lancé, il prend le nom fmxdbc_listener et les événements sont consignés sous ce nom. Le processus du port d'écoute FileMaker xDBC est distinct du processus FileMaker Server. Chapitre 4 | Utilisation d’ODBC pour partager des données FileMaker 23 Présentation de l’accès à un fichier de base de données FileMaker A partir d’une application compatible ODBC, vous pouvez construire des requêtes SQL pour accéder à un fichier de base de données FileMaker. Le pilote client ODBC doit être installé sur l’ordinateur qui génère la requête SQL. Pour accéder à un fichier de base de données FileMaker : 1. Dans FileMaker Pro, vérifiez les jeux de privilèges que vous avez affectés aux comptes qui accéderont au fichier de base de données. Les comptes qui ont besoin d’un accès doivent employer un jeu de privilèges incluant le privilège étendu Accès via ODBC/JDBC. 2. Activez le partage de données via ODBC/JDBC sur l’application hôte FileMaker Server Advanced (via la console Admin de FileMaker Server) ou FileMaker Pro. Console Admin de FileMaker Server : cliquez sur ODBC/JDBC , puis sélectionnez Activer ODBC/JDBC. FileMaker Pro : choisissez le menu Fichier > Partage > ODBC/JDBC et paramétrez l’option Partage ODBC/JDBC sur Activé. 3. Assurez-vous que le fichier de base de données FileMaker auquel vous voulez accéder est hébergé et disponible. Si votre solution de base de données FileMaker utilise plusieurs fichiers de base de données FileMaker, tous ces fichiers devront être enregistrés sur le même ordinateur. 4. Connectez-vous à la source de données FileMaker. 5. Créez et exécutez une requête SQL dans l’application cliente. Chaque fichier de base de données FileMaker ouvert et configuré pour l’accès constitue une source de données distincte (vous devez créer une source de données pour chaque fichier de données FileMaker auquel vous souhaitez accéder en tant que source de données). Chaque base de données peut contenir une ou plusieurs tables. Les rubriques FileMaker sont représentées sous forme de colonnes. Le nom complet de la rubrique, avec les caractères non alphanumériques qu’il contient éventuellement, s’affiche en tant que nom de colonne. Accès à un fichier de base de données FileMaker depuis une application Windows Spécification des propriétés de pilote client ODBC pour une source de données FileMaker (Windows) Créez une source de données pour chaque fichier de base de données FileMaker auquel vous souhaitez accéder en tant que source de données. La source de données identifie le pilote client ODBC FileMaker, l’emplacement de l’application hôte FileMaker et le fichier de base de données FileMaker auquel vous accédez en tant que source de données. 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 d’administration > Sources de données (ODBC). 1 Sous Windows XP, l’option Outils d’administration apparaît dans la catégorie Performances et maintenance. 1 Sous Windows Vista et Windows 7, l'option Outils d'administration apparaît dans la catégorie Système et sécurité. L'Administrateur de sources de données ODBC s'ouvre. 2. Sélectionnez l'onglet Sources de données système ou Sources de données utilisateur (sélectionnez l'onglet utilisé lors de la précédente configuration). 3. Sélectionnez la source de données FileMaker que vous avez configurée précédemment. Le nom que vous aviez entré pour la source de donnée apparaît sous Nom et FileMaker ODBC apparaît sous Pilote. 4. Cliquez sur Configurer. La boîte de dialogue Configuration DSN FileMaker s'ouvre. 5. Dans la zone Nom, entrez un nom aisément identifiable par les autres utilisateurs accédant à la source de données FileMaker Pro. Dans Description, entrez, si vous le souhaitez, une description de la source de données FileMaker. Cliquez sur Suivant. 6. Pour Hôte, entrez l’emplacement de votre source de données. Si vous vous connectez à un fichier de base de données FileMaker hébergé par FileMaker Pro sur votre machine locale, tapez localhost (ou 127.0.0.1). Si vous vous connectez à un fichier de base de données FileMaker hébergé par FileMaker Server Advanced par l’intermédiaire d’un réseau, tapez l’adresse IP du serveur FileMaker. Si vous avez activé le partage via ODBC/JDBC dans l'application hôte, sélectionnez Connectez-vous à l'hôte pour obtenir les noms des bases disponibles. 7. Pour Base de données, sélectionnez une base de données dans la liste des bases de données disponibles ou tapez le nom de fichier de la base de données utilisée comme source de données. Remarque Pour les bases de données hébergées par FileMaker Server Advanced, vous pouvez filtrer la liste des bases de données sur le paramètre Filtre d'affichage du fichier. Pour plus d'informations, consultez l'Aide de FileMaker Server. Si vous avez besoin d'un traitement spécial réservé aux caractères autres qu'anglais, cliquez sur Langue avancée. La boîte de dialogue Options de langue avancées s'ouvre. 1 Pour détecter automatiquement les paramètres de langue, sélectionnez l'option Détectez auto. paramètres de langue pour application. 1 Pour préciser le paramètre de langue, décochez l'option Détectez auto. paramètres de langue pour application et sélectionnez le paramètre système à utiliser. Si vous souhaitez créer un fichier journal pour les requêtes dont l'exécution est longue, sélectionnez l'option Enregistrez requêtes longues dans fichier journal, puis entrez le nom du fichier journal. Chapitre 4 | Utilisation d’ODBC pour partager des données FileMaker 25 8. Cliquez sur Terminer pour enregistrer les informations de votre source de données. 9. Cliquez sur Terminé pour fermer la boîte de dialogue Configuration DSN FileMaker. Vérification de l’accès via ODBC (Windows) Pour vérifier que vous avez configuré correctement le pilote client ODBC pour accéder à la source de données FileMaker : 1. Dans le Panneau de configuration de Windows, ouvrez Outils d’administration > Sources de données (ODBC). 1 Sous Windows XP, l’option Outils d’administration apparaît dans la catégorie Performances et maintenance. 1 Sous Windows Vista et Windows 7, l'option Outils d'administration apparaît dans la catégorie Système et sécurité. L'Administrateur de sources de données ODBC s'ouvre. 2. Sélectionnez l'onglet Sources de données système ou Sources de données utilisateur (sélectionnez l'onglet utilisé lors de la précédente configuration). 3. Sélectionnez la source de données FileMaker que vous avez configurée précédemment. Le nom que vous aviez entré pour la source de donnée apparaît sous Nom et FileMaker ODBC apparaît sous Pilote. 4. Cliquez sur Configurer. La boîte de dialogue Configuration DSN FileMaker s'ouvre. 5. Cliquez sur Suivant jusqu'à la page Conclusion. 6. Cliquez sur Test. Le système vous demande d’entrer un nom de compte FileMaker (dans Database User Name (Nom d’utilisateur de base de données)) et un mot de passe (dans Database Password (Mot de passe de base de données)). Si la connexion fonctionne correctement, le message Réussite du test s’affiche. Si la connexion échoue : 1 Assurez-vous que le fichier de base de données FileMaker est hébergé et disponible. 1 Mettez à jour ou corrigez vos informations de connexion. 1 Assurez-vous que votre compte FileMaker emploie un jeu de privilèges incluant le privilège étendu Accès via ODBC/JDBC. 1 Vérifiez que l’application hôte FileMaker Pro ou FileMaker Server a été configurée pour partager des fichiers via ODBC/JDBC. 26 Guide ODBC et JDBC FileMaker Accès à un fichier de base de données FileMaker depuis une application Mac OS Spécification des propriétés du pilote client ODBC pour une source de données FileMaker (Mac OS) Créez une source de données pour chaque fichier de base de données FileMaker auquel vous souhaitez accéder en tant que source de données. La source de données identifie le pilote client ODBC FileMaker, l’emplacement de l’application hôte FileMaker et le fichier de base de données FileMaker auquel vous accédez en tant que source de données. 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 système ou DNS utilisateur. 3. Sélectionnez la source de données FileMaker que vous avez configurée précédemment. Le nom que vous aviez entré pour la source de donnée apparaît sous Nom et FileMaker ODBC apparaît sous Pilote. 4. Cliquez sur Configurer. La boîte de dialogue Configuration DSN FileMaker s'ouvre. 5. Cliquez sur Continuer. 6. Dans la zone Nom, entrez un nom aisément identifiable par les autres utilisateurs accédant à la source de données FileMaker Pro. Vous pouvez décrire cette source de données dans la zone facultative Description (Description). 7. Pour Hôte, entrez l’emplacement de votre source de données. Si vous vous connectez à un fichier de base de données FileMaker hébergé par FileMaker Pro sur votre machine locale, tapez localhost (ou 127.0.0.1). Si vous vous connectez à un fichier de base de données FileMaker hébergé par FileMaker Server Advanced par l’intermédiaire d’un réseau, tapez l’adresse IP du serveur FileMaker. Si vous avez activé le partage via ODBC/JDBC dans l'application hôte, sélectionnez Connectez-vous à l'hôte pour obtenir les noms des bases disponibles. 8. Pour Base de données, sélectionnez une base de données dans la liste des bases de données disponibles ou tapez le nom de fichier de la base de données utilisée comme source de données. Remarque Pour les bases de données hébergées par FileMaker Server Advanced, vous pouvez filtrer la liste des bases de données sur le paramètre Filtre d'affichage du fichier. Pour plus d'informations, consultez l'Aide de FileMaker Server. Chapitre 4 | Utilisation d’ODBC pour partager des données FileMaker 27 Si vous avez besoin d'un traitement spécial réservé aux caractères autres qu'anglais, cliquez sur Langue avancée. La boîte de dialogue Options de langue avancées s'ouvre. 1 Pour détecter automatiquement les paramètres de langue, sélectionnez l'option Détectez auto. paramètres de langue pour application. 1 Pour préciser le paramètre de langue, décochez l'option Détectez auto. paramètres de langue pour application et sélectionnez le paramètre système à utiliser. Si vous souhaitez créer un fichier journal pour les requêtes dont l'exécution est longue, sélectionnez l'option Enregistrez requêtes longues dans fichier journal, puis entrez le nom du fichier journal. 9. Cliquez sur Terminer pour enregistrer les informations de votre source de données. 10. Cliquez sur Terminé pour fermer la boîte de dialogue Configuration DSN FileMaker. Vérification de l'accès via ODBC (Mac OS) Pour vérifier que vous avez configuré correctement le pilote client ODBC pour accéder à la source de données FileMaker : 1. Lancez l'utilitaire ODBC Manager. (ODBC Manager se trouve dans le dossier Utilitaires du dossier Applications.) 2. Sélectionnez l'onglet Sources de données système ou Sources de données utilisateur (sélectionnez l'onglet utilisé lors de la précédente configuration). 3. Sélectionnez la source de données FileMaker que vous avez configurée précédemment. Le nom que vous aviez entré pour la source de donnée apparaît sous Nom et FileMaker ODBC apparaît sous Pilote. 4. Cliquez sur Configurer. La boîte de dialogue Configuration DSN FileMaker s'ouvre. 5. Cliquez sur Continuer pour vérifier à nouveau la page Conclusion. 6. Cliquez sur Test. Le système vous demande d’entrer un nom de compte FileMaker (dans Database User Name (Nom d’utilisateur de base de données)) et un mot de passe (dans Database Password (Mot de passe de base de données)). Si la connexion fonctionne correctement, le message Réussite du test s’affiche. Si la connexion échoue : 1 Assurez-vous que le fichier de base de données FileMaker est hébergé et disponible. 1 Mettez à jour ou corrigez vos informations de connexion. 1 Assurez-vous que votre compte FileMaker emploie un jeu de privilèges incluant le privilège étendu Accès via ODBC/JDBC. 1 Vérifiez que l’application hôte FileMaker Pro ou FileMaker Server a été configurée 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 nécessaire pour accéder à FileMaker en tant que source de données depuis des applications tierces et personnalisées via JDBC (Java Database Connectivity). Le pilote client est disponible dans le dossier xDBC du DVD-ROM de FileMaker ou du téléchargement électronique. Les dernières versions des pilotes clients sont également disponibles à l'adresse suivante : www.filemaker.fr/support/technologies Si vous devez héberger un fichier de base de données FileMaker à l’aide de FileMaker Server Advanced, mettez les pilotes clients à la disposition des utilisateurs distants. Après avoir installé le pilote client requis, vous pouvez configurer le pilote pour accéder à une source de données FileMaker et construire des requêtes SQL (Structured Query Language) pour interagir avec les données. Le pilote client JDBC est la partie du logiciel FileMaker qui permet à des applications tierces ou personnalisées d’accéder aux fichiers FileMaker en tant que sources de données JDBC. Configuration logicielle requise Pour installer et utiliser les pilotes clients JDBC, vous devez disposer de JDK 1.4 ou une version ultérieure. Pour savoir quelle version de Java vous exécutez, ouvrez une fenêtre de commande (Windows) ou une fenêtre Terminal (Mac OS) et tapez java -version. Configuration requise pour une utilisation en réseau Si vous devez accéder à une source de données FileMaker hébergée sur un autre ordinateur, vous devez disposer d’un accès réseau via TCP/IP. Installation du pilote client JDBC Vous devez disposer d’un accès en écriture sur le dossier d’installation du pilote client JDBC. Pour installer le pilote client JDBC 1. Effectuez l’une des opérations suivantes : 1 Windows : Si vous avez reçu le logiciel par voie électronique, double-cliquez sur l'icône d'installation (fichier .exe). 1 Mac OS : Si vous avez reçu le logiciel par voie électronique, double-cliquez sur l'icône d'image disque (fichier .dmg). 1 Si vous disposez d'un disque d'installation, insérez-le dans le lecteur. 2. Dans la fenêtre 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 système d'exploitation : 1 Windows : Copiez le fichier fmjdbc.jar dans le dossier contenant votre fichier exécutable Java (java.exe) ou dans un autre dossier inclus dans l'élément ClassPath de votre application Java. 1 Mac OS : Copiez le fichier fmjdbc.jar dans le dossier /Bibliothèque/Java/Extensions ou dans un autre dossier inclus dans l'élément ClassPath de votre application Java. Le pilote client JDBC est désormais disponible pour accéder à une source de données 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 spécifier l’URL JDBC correcte à partir de l’application ou de l’applet. Important Vous devez réserver le port 2399 pour le pilote de client FileMaker JDBC. Le numéro 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 données FileMaker ». Chapitre 6 Utilisation de JDBC pour partager des données FileMaker Si vous programmez en Java, vous pouvez employer le pilote client JDBC avec n’importe quel outil RAD (Rapid Application Development) pour créer visuellement une application ou une applet Java qui se connecte à une source de données FileMaker. L’application ou applet Java qui utilise le pilote client JDBC peut accéder directement aux données d’un fichier de base de données FileMaker. A propos de JDBC JDBC est une API (Application Programming Interface) Java qui permet d’exécuter des instructions SQL (Structured Query Language), langage standard d’accès aux bases de données relationnelles. JDBC est un nom et non un acronyme, bien qu’il soit possible de croire qu’il signifie « Java Database Connectivity » puisqu’il est l’équivalent d’ODBC pour Java. JDBC est une interface de bas niveau, ce qui signifie qu’il 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 données FileMaker en utilisant le pilote client JDBC. Les instructions SQL sont transmises à l’hôte FileMaker du fichier de base de données et les réponses vous sont ensuite communiquées. Si vous utilisez FileMaker Server pour l’hébergement, le fichier de base de données que vous employez en tant que source de données peut être situé sur une autre machine (la machine serveur) connectée au réseau, votre applet ou application cliente Java étant placée sur votre machine (la machine cliente). Il s’agit d’une configuration client/serveur. application Java Pilote JDBC Ordinateur client FileMaker Serveur de bases de données 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 données pendant la création du code de l’application ou de l’applet Java. Une fois l’application ou l’applet Java créée, le pilote client JDBC doit accompagner les fichiers ou être inclus dans le code pour que l’application ou l’applet puisse communiquer avec la base de données. Pour utiliser le pilote client JDBC, votre application ou applet Java doit enregistrer le pilote dans le gestionnaire de pilotes JDBC et vous devez spécifier l’URL JDBC correcte à partir de l’application ou de l’applet. L’URL JDBC est nécessaire pour se connecter à la base de données. 32 Guide ODBC et JDBC FileMaker A propos du pilote client JDBC Le pilote client JDBC prend partiellement en charge la spécification 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 clés générées automatiquement Transmission des paramètres vers un objet d’instruction d’appel par nom Prise en charge du curseur persistant Extraction et mise à jour de l’objet référencé par un objet Ref Mise à jour des colonnes contenant des types de données CLOB, ARRAY et REF Type de données booléen Type de données DATALINK 1 Transformation des groupes et correspondance de types 1 Relation entre le SPI JDBC et l’architecture Connector Pour plus d’informations, 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 s’agit d’un pilote de type 4, c’est-à-dire d’un pilote de protocole natif purement Java qui convertit directement les appels JDBC dans le protocole de réseau utilisé par FileMaker. Ce type de pilote offre tous les avantages de Java, y compris l’installation automatique (par exemple, le téléchargement du pilote JDBC avec l’applet qui l’utilise). La classe (et point d’accès principal) du pilote est nommée : com.filemaker.jdbc.Driver Important Le pilote client JDBC remplace le pilote JDBC FileMaker fourni avec une version antérieure de FileMaker. Si vous avez déjà configuré l’accès à une source de données FileMaker à l’aide de l’ancien pilote, vous devez redéfinir l’accès en utilisant et en configurant le nouveau pilote. Remarque Vous pouvez utiliser le Moniteur d’activité sous Mac OS ou le Gestionnaire des tâches sous Windows pour vérifier l’état du processus du port d'écoute FileMaker xDBC afin de confirmer que ce port d'écoute est en cours d’exécution. Une fois le processus lancé, il prend le nom fmxdbc_listener et les événements sont consignés sous ce nom. Le processus du port d'écoute FileMaker xDBC est distinct du processus FileMaker Server. Utilisation d’une URL JDBC pour la connexion à une base de données En langage Java, l’accès à la plupart des ressources s’effectue par le biais d’URL (Uniform Resource Locator). Une URL JDBC sert à identifier la base de données afin que le pilote client JDBC puisse la reconnaître et s’y connecter. L’URL JDBC est constituée de trois éléments principaux, séparés par le signe deux-points : jdbc:<sous-protocole>:<sous-nom> La première partie de l’URL JDBC est toujours le protocole JDBC (« jdbc »). Le sous-protocole est le nom du pilote ou le mécanisme prenant en charge plusieurs pilotes. Pour le pilote client JDBC, le sous-protocole est filemaker. Le sous-nom est l’adresse IP de la machine qui héberge la source de données FileMaker. Chapitre 6 | Utilisation de JDBC pour partager des données FileMaker Enregistrement du pilote client JDBC et connexion à une source de données FileMaker (exemple) Vous trouverez ci-dessous un extrait de code d’une application cliente JDBC qui : 1. Enregistre le pilote client JDBC auprès du gestionnaire de pilotes JDBC. 2. Etablit une connexion avec la source de données FileMaker. L'URL JDBC est jdbc:filemaker://192.168.1.1/database 3. renvoie des codes d’erreur. 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 d’une connexion avec FileMaker Connection con; try { con = DriverManager.getConnection("jdbc:filemaker://192.168.1.1/mabasedonnées","nomutilisateur", "motdepasse"); } catch (Exception e) { System.out.println(e); } // généreration 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 n’est pas destiné à être compilé. Spécification des propriétés du pilote dans le sous-nom de l’URL Indiquez les propriétés d’utilisateur et de mot de passe du pilote dans le sous-nom de l’URL JDBC. Il s’agit des mêmes propriétés que celles qui pouvaient être transférées à la connexion en invoquant la méthode DriverManager.getConnection à l’aide du paramètre Properties. 1 user : compte du fichier de base de données FileMaker qui emploie un jeu de privilèges avec le privilège étendu Accès via ODBC/JDBC 1 password : mot de passe du compte du fichier de base de données FileMaker Connexion à l’URL JDBC avec le nom de la base de données spécifiée dans l’URL Format : jdbc:filemaker://<adresse IP de l’hôte filemaker>/<nombasedonnées> Exemple : jdbc:filemaker://192.168.1.1/publications Connexion à l’URL JDBC avec le nom de la base de données, le nom d’utilisateur et le mot de passe spécifiés dans l’URL Format : jdbc:filemaker://<adresse IP de l’hôte filemaker>/ <nombasedonnées>?user=<nomutilisateurbasedonnées>&password=<motpassebasedonnées> Exemple : jdbc:filemaker://192.168.1.1/customers?user=Collections&password=admin Remarque Etant donné l'utilisation du caractère "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 possédant plusieurs fichiers de bases de données FileMaker Si votre solution de base de données FileMaker utilise de nombreux fichiers de base de données FileMaker, créez un fichier de base de données supplémentaire contenant toutes les références nécessaires de sources de données externes, d’occurrences de tables et de liens. Définissez ensuite ce fichier de base de données supplémentaire en tant que source de données dans l’URL JDBC. Tous les fichiers de base de données FileMaker doivent être enregistrés sur le même ordinateur. Chapitre 6 | Utilisation de JDBC pour partager des données FileMaker 35 Vérification de l’accès via JDBC Pour vérifier l’accès à un fichier de base de données FileMaker via JDBC, assurez-vous que : 1 Le fichier de base de données FileMaker est hébergé et disponible. 1 Votre compte FileMaker emploie un jeu de privilèges incluant le privilège étendu Accès via ODBC/JDBC. 1 L’application hôte FileMaker Pro ou FileMaker Server Advanced a été configurée pour partager des fichiers via ODBC/JDBC. Pour partager un fichier de base de données FileMaker en tant que source de données, utilisez FileMaker Pro pour définir les comptes qui auront besoin d’accéder au fichier de base de données. Ensuite, contrôlez l’accès au fichier de base de données en affectant des jeux de privilèges aux comptes, notamment le privilège étendu Accès via ODBC/JDBC. Enfin, activez le partage de données via ODBC/ JDBC sur l’application hôte FileMaker Server Advanced ou FileMaker Pro. Pour plus d’informations, reportez-vous à l’Aide de FileMaker Pro. 1 L’enregistrement du pilote client JDBC et l’URL JDBC sont corrects (le pilote peut être inclus dans l’application Java ou situé sur la machine cliente). Pour plus d’informations sur l’utilisation de JDBC pour partager les données FileMaker, consultez le site www.filemaker.fr/support/technologies. 36 Guide ODBC et JDBC FileMaker Chapitre 7 Standards pris en charge Ce chapitre décrit les instructions et constructions SQL prises en charge par les pilotes clients ODBC et JDBC de FileMaker. Ces pilotes clients sont destinés à accéder à une solution FileMaker à partir d’une application compatible ODBC ou JDBC. Cette solution peut être hébergée 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 spécification 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 d’entrée de SQL-92, ainsi qu’avec certaines fonctions SQL-92 de niveau intermédiaire. Prise en charge des caractères Unicode Les pilotes clients ODBC et JDBC prennent en charge l’API Unicode. Toutefois, si vous créez une application personnalisée 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 requête ou une application non Unicode). Remarque Pour insérer et extraire des données 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 données FileMaker en types de données ODBC SQL et JDBC SQL. Pour plus d’informations sur les conversions de types de données, consultez la section « Correspondances entre les rubriques FileMaker et les types de données ODBC », page 61 et la section « Correspondances entre les rubriques FileMaker et les types de données JDBC », page 62. Pour plus d’informations sur la création de requêtes SQL, consultez un ouvrage spécialisé. Remarque Les pilotes clients ODBC et JDBC ne prennent pas en charge les tables externes FileMaker. SELECT, instruction L’instruction SELECT vous permet de spécifier les colonnes qui vous intéressent. Faites suivre l’instruction SELECT des expressions de colonne (comparables aux noms de rubriques) que vous voulez extraire (par exemple, nom_famille). Les expressions peuvent contenir des opérations mathématiques ou des instructions de manipulation de chaînes de texte (par exemple, SALAIRE * 1.05). 38 Guide ODBC et JDBC FileMaker L’instruction SELECT peut être accompagnée de diverses clauses : SELECT [DISTINCT] {* | expression_colonne [[AS] alias_colonne],...} FROM nom_table [alias_table], ... [ WHERE expr1 opérateur_rel expr2 ] [ GROUP BY {expression_colonne, ...} ] [ HAVING expr1 opérateur_rel expr2 ] [ UNION [ALL] (SELECT...) ] [ ORDER BY {expression_tri [DESC | ASC]}, ... ] [ FOR UPDATE [OF {expression_colonne, ...}] ] Les éléments entre crochets sont facultatifs. alias_colonne peut servir à attribuer à la colonne un nom plus descriptif ou à abréger un nom de colonne long. Par exemple, pour attribuer l’alias service à la colonne serv : SELECT serv AS service FROM emp Vous pouvez faire précéder le nom des rubriques du nom ou de l’alias de la table. Par exemple, EMP.NOM_FAMILLE ou E.NOM_FAMILLE, où E est l’alias de la table EMP. Vous pouvez faire précéder la première expression de colonne de l’opérateur DISTINCT. Cet opérateur supprime les rangées dupliquées du résultat d’une requête. 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 utilisées dans l’instruction 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 d’une ou de plusieurs rubriques en fonction desquelles les valeurs renvoyées doivent être groupées. Cette clause sert à renvoyer un ensemble de valeurs statistiques sous la forme d’une rangée par groupe (comme dans un sous-récapitulatif sous FileMaker Pro). HAVING (page 40) Indiquer les conditions s’appliquant à des groupes d’enregistrements (par exemple, afficher uniquement les services pour lesquels le total des salaires est supérieur à 200 000 euros). UNION (page 39) Combinez les résultats 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 procéder à des mises à jour positionnées ou des suppressions positionnées via les curseurs SQL Remarque Si vous essayez de récupérer des données depuis une table sans colonne, l’instruction SELECT ne renvoie rien. Chapitre 7 | Standards pris en charge 39 Clause FROM La clause FROM indique quelles tables sont utilisées dans l’instruction 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 données active. alias_table peut être utilisé pour attribuer à la table un nom plus descriptif, pour abréger un nom de table plus long ou pour inclure la même table dans la requête à plusieurs reprises (par exemple dans les liens internes). Vous pouvez faire précéder le nom des rubriques du nom ou de l’alias de la table. Par exemple, à partir de la spécification de table FROM employés E, vous pouvez faire référence à la rubrique NOM_FAMILLE sous la forme E.NOM_FAMILLE. Vous devez impérativement employer des alias de tables quand l’instruction SELECT joint une table à elle-même. Par exemple : SELECT * FROM employés E, employés F WHERE E.id_directeur = F.id_employé Le signe égal (=) n’inclut que les rangées correspondantes dans le résultat. Si vous joignez plusieurs tables et que vous souhaitez ignorer toutes les rangées qui n’ont pas de rangées 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 rangées de la première 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 rangée de la table « Vendeurs » apparaît dans la table liée. Si vous liez deux tables, mais ne souhaitez pas ignorer les rangées 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 rangée de la table « Informations_Ventes » apparaît dans la table liée. 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 n’est pas pris en charge actuellement. Clause WHERE La clause WHERE indique les conditions que les enregistrements doivent remplir pour être extraits. Elle spécifie ces conditions sous la forme suivante : WHERE expr1 opérateur_rel expr2 expr1 et expr2 peuvent être des noms de rubriques, des valeurs constantes ou des expressions. opérateur_rel est l’opérateur relationnel qui lie les deux expressions. Par exemple, l’instruction SELECT suivante extrait le nom des employés dont le salaire est supérieur ou égal à 2 000 euros. SELECT nom_famille,prénom 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 entièrement qualifiés dans la liste (de projection), vous devez également utiliser les noms entièrement qualifiés dans la clause WHERE liée. Clause GROUP BY La clause GROUP BY indique les noms d’une ou de plusieurs rubriques devant servir à grouper les valeurs renvoyées. Cette clause sert à renvoyer un jeu de valeurs statistiques. La syntaxe de cette clause est la suivante : GROUP BY colonnes colonnes doit correspondre à l’expression de colonne utilisée dans la clause SELECT. Une expression de colonne peut être composée d'un ou de plusieurs noms de rubriques de la table de base de données, séparés par des virgules. L’exemple suivant calcule la somme des salaires de chaque service. SELECT id_serv, SUM (salaire) FROM emp GROUP BY id_serv Cette instruction renvoie une rangée pour chaque ID de service distinct. Chaque rangée contient l’ID du service et la somme des salaires des employés de ce service. Clause HAVING La clause HAVING permet de spécifier des conditions pour des groupes d’enregistrements (par exemple, afficher uniquement les services pour lesquels le total des salaires est supérieur à 200 000 euros). La syntaxe de cette clause est la suivante : HAVING expr1 opérateur_rel expr2 expr1 et expr2 peuvent être des noms de rubriques, des valeurs constantes ou des expressions. Ces expressions n’ont pas besoin de correspondre à une expression de colonne de la clause SELECT. opérateur_rel est l’opérateur relationnel qui lie les deux expressions. L’exemple suivant renvoie uniquement les services dont la somme des salaires est supérieure à 200 000 euros : SELECT id_serv, SUM (salaire) FROM emp GROUP BY id_serv HAVING SUM (salaire) > 200000 Opérateur UNION L’opérateur UNION combine les résultats de deux instructions SELECT ou plus en un seul et même résultat. Ce résultat correspond à l’ensemble des enregistrements renvoyés par les instructions SELECT. Par défaut, le système 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 l’opérateur UNION, les listes de sélection de chaque instruction SELECT doivent avoir le même nombre d’expressions de colonne, avec les mêmes types de données et le même ordre. Par exemple : SELECT nom_famille, salaire, date_embauche FROM emp UNION SELECT nom, paie, date_naissance FROM personne Cet exemple utilise le même nombre d’expressions de colonne et chaque expression de colonne, placée dans le même ordre, utilise le même type de données. Chapitre 7 | Standards pris en charge 41 L’exemple suivant n’est pas valide car les types de données des expressions de colonne sont différents (la rubrique SALAIRE de la table EMP n’emploie pas le même type de données que la rubrique NOM_FAMILLE de la table AUGMENTATIONS). Cet exemple utilise le même nombre d’expressions de colonne dans chaque instruction SELECT mais ces expressions ne sont pas dans le même ordre par type de données. 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 triés. 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 numéro de position de l’expression de colonne à utiliser. Par défaut, le tri est ascendant (ASC). Par exemple, pour trier par nom_famille, puis par prénom, vous pouvez employer l’une des instructions SELECT suivantes : SELECT id_emp, nom_famille, prénom FROM emp ORDER BY nom_famille, prénom ou SELECT id_emp, nom_famille, prénom FROM emp ORDER BY 2,3 Dans le second exemple, nom_famille est la deuxième expression de colonne après SELECT. ORDER BY 2 trie donc par nom_famille. Clause FOR UPDATE La clause FOR UPDATE verrouille les enregistrements pour des mises à jour positionnées ou des suppressions positionnées 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 données que vous souhaitez mettre à jour, séparés par une virgule. C’est un argument facultatif et ignoré. L’exemple suivant renvoie tous les enregistrements de la base de données d’employés pour lesquels la rubrique SALAIRE a une valeur supérieure à 2 000 euros. Une fois l’enregistrement récupéré, il est verrouillé. Si vous mettez à jour l’enregistrement ou que vous le supprimez, le verrou est maintenu jusqu’à ce que vous validiez la modification. Sinon, le verrou disparaît quand vous passez à l’enregistrement suivant. SELECT * FROM emp WHERE salaire > 20000 FOR UPDATE OF nom, prénom, salaire 42 Guide ODBC et JDBC FileMaker Exemples supplémentaires : Utilisation de Exemple de code SQL Constante de type texte SELECT 'ChienChat' FROM Vendeurs Constante de type numérique 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_Société FROM Informations_Ventes SELECT DISTINCT Nom_Société FROM Informations_Ventes colonne de type numérique 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_Société FROM Informations_Ventes SELECT GETAS(Logo_Société, 'JPEG') FROM Informations_Ventes Caractère joker * SELECT * FROM Vendeurs SELECT DISTINCT * FROM Vendeurs a. Un conteneur de fichier de base de données est une rubrique qui contient un fichier de base de données FileMaker. Notes à propos des exemples Une colonne est une référence à une rubrique du fichier de base de données FileMaker (cette rubrique peut contenir de nombreuses valeurs distinctes). Le caractère générique (*) est une manière plus courte de dire « tout ». L’exemple SELECT * FROM Vendeurs fait apparaître toutes les colonnes de la table Vendeurs. L’exemple SELECT DISTINCT * FROM Vendeurs fait apparaître toutes les rangées uniques de la table Vendeurs (sans doublons). 1 FileMaker ne stocke pas de données pour les chaînes vides. Les requêtes suivantes ne renvoient donc jamais aucun enregistrement : SELECT * FROM test WHERE c ='' SELECT * FROM test WHERE c <>'' 1 Si vous utilisez SELECT avec des données binaires, vous devez utiliser la fonction GetAs() pour indiquer le flux à renvoyer. Consultez la section “Sélection du contenu d’une rubrique Multimédia : fonctions CAST() et GetAs(),” pour plus d'informations. Sélection du contenu d’une rubrique Multimédia : fonctions CAST() et GetAs() Vous pouvez récupérer depuis une rubrique Multimédia des données binaires, des informations de référence de fichier ou des données appartenant à un type de fichier particulier. Pour récupérer des données binaires, utilisez une instruction SELECT standard. Par exemple : SELECT Brochures_Société FROM Informations_Ventes Si les données du fichier ou les données JPEG existent, l’instruction SELECT récupère les données dans un formulaire binaire ; dans le cas contraire, l’instruction SELECT renvoie la valeur <null>. Chapitre 7 | Standards pris en charge 43 Pour récupérer des informations de référence de fichier depuis une rubrique Multimédia, comme le chemin d’accès à un fichier, à une image ou à une séquence Quicktime, utilisez la fonction CAST en même temps que l’instruction SELECT. Par exemple : SELECT CAST(Brochures_Société AS VARCHAR(NNN)) FROM Informations_Ventes Dans cet exemple : 1 Si vous avez inséré un fichier dans la rubrique Multimédia en utilisant FileMaker Pro mais que vous avez enregistré uniquement une référence dans le fichier, l’instruction SELECT récupère les informations de référence du fichier comme étant de type SQL_VARCHAR. 1 Si vous avez inséré les commentaires d’un fichier dans la rubrique Multimédia en utilisant FileMaker Pro, l’instruction SELECT récupère le nom du fichier. 1 Si vous avez importé un fichier dans la rubrique Multimédia depuis une autre application, l’instruction SELECT affiche ? (le fichier apparaît sous la forme Untitled.dat dans FileMaker Pro). Pour récupérer des données depuis une rubrique Multimédia, utilisez la fonction GetAs et indiquez le type du fichier en fonction du mode d’insertion des données dans la rubrique Multimédia dans FileMaker Pro. 1 Si les données ont été insérées à l’aide de la commande Insérer > fichier, indiquez 'FILE' dans la fonction GetAs. Par exemple : SELECT GetAs(Brochures_Société, 'FILE') FROM Informations_Ventes 1 Si les données ont été insérées à l’aide de la commande Insérer > son (audio standard — format brut Mac OS), indiquez 'snd' dans la fonction GetAs. Par exemple : SELECT GetAs(Réunion_Société, 'snd') FROM LettreInfo_Société 1 Si les données ont été insérées à l’aide de la commande Insérer > objet (données multimédia OLE), indiquez 'EMBO' dans la fonction GetAs. Par exemple : SELECT GetAs(Résultats_Société, 'EMBO') FROM Rapport_Annuel 1 Si les données ont été insérées à l’aide de la commande Insertion > Image, faites glisser et déposez le fichier, ou copiez-le depuis le Presse-papiers, et indiquez l’un des types de fichiers répertorié dans le tableau ci-dessous. Par exemple : SELECT GetAs(Logo_Société, 'JPEG') FROM Icônes_Société 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-tête de fichier de 512 octets) FPix Flash (FPX) PNGf Format d’image Bitmap FORK Resource fork (Mac OS) PNTG MacPaint GIFf Graphics Interchange Format qtif Fichier image QuickTime JPEG Photos SGI Format bitmap générique JP2 JPEG 2000 TIFF Format de fichier trame pour images numériques META Métafichier Windows (amélioré) TPIC Targa METO Windows Metafile (original) XMLO Objets de modèle moov Ancien format QuickTime (Mac OS) 8BPS PhotoShop (PSD) 44 Guide ODBC et JDBC FileMaker DELETE L’instruction DELETE permet de supprimer des enregistrements d’une table de base de données. La syntaxe de cette instruction est la suivante : DELETE FROM nom_table [ WHERE { conditions } ] Remarque La clause WHERE indique quels enregistrements doivent être supprimés. Si vous n’incluez pas le mot-clé WHERE, tous les enregistrements de la table seront supprimés (mais la table restera intacte). Voici un exemple d’instruction DELETE appliquée à la table Employés : DELETE FROM emp WHERE id_emp = 'E10001' Chaque instruction DELETE supprime chaque enregistrement réunissant les conditions définies dans la clause WHERE. Ici, chaque enregistrement d’employé contenant le numéro d’identification E10001 est supprimé. Les numéros d’identification étant uniques dans la table Employés, un seul enregistrement est supprimé. INSERT L’instruction SQL INSERT permet de créer des enregistrements dans une table de base de données. Vous pouvez spécifier, au choix : 1 Une liste de valeurs à insérer sous la forme d’un nouvel enregistrement 1 Une instruction SELECT permettant de copier les données d’une autre table et de les insérer 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 différentes colonnes (dans l’ordre approprié) dont les valeurs sont spécifiées dans la clause VALUES. Si vous omettez nom_col, les expressions de valeur (expr) doivent fournir des valeurs pour toutes les colonnes définies dans la table et elles doivent figurer dans le même ordre que les colonnes définies pour la table. nom_col peut également indiquer une rubrique multivaluée, par exemple lastDates[4]. expr représente la liste d’expressions donnant les valeurs des colonnes du nouvel enregistrement. Généralement, les expressions sont les valeurs constantes des colonnes (mais il peut également s’agir d’une sous-requête). Les valeurs de type chaîne de caractères doivent être placées entre guillemets simples ('). Pour inclure un guillemet simple (correspondant à une apostrophe) dans une valeur de type chaîne de caractères placée entre guillemets simples, utilisez deux guillemets simples consécutifs (par exemple 'L''instance'). Les sous-requêtes doivent être entre parenthèses. L’exemple suivant insère une liste d’expressions : INSERT INTO emp (nom_famille, prénom, 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 données. Ici, un enregistrement a été ajouté à la table EMP (employés) de la base de données, avec des valeurs pour cinq colonnes. Les autres colonnes de la table n'ont pas reçu de valeur. Autrement dit, leur valeur est nulle. Remarque Dans les rubriques Multimédia, vous ne pouvez utiliser INSERT que pour du texte, à moins de préparer une déclaration paramétrée et de générer le flux de données depuis votre application. Pour utiliser des données binaires, vous devez spécifier le type dans une fonction PutAs() : PutAs(col, 'type'), où la valeur du type est un type comme décrit dans la section « Sélection du contenu d’une rubrique Multimédia : fonctions CAST() et GetAs() » page 42. L’instruction SELECT est une requête qui renvoie des valeurs pour chaque valeur nom_col spécifiée dans la liste de noms de colonnes. En employant une instruction SELECT plutôt qu’une liste d’expressions de valeurs, vous avez la possibilité de sélectionner un ensemble de rangées dans une table et de l’insérer dans une autre table à l’aide d’une même instruction INSERT. Voici un exemple d’instruction INSERT associée à une instruction SELECT : INSERT INTO emp1 (prénom, nom_famille, id_emp, service, salaire) SELECT prénom, nom_famille, id_emp, service, salaire from emp WHERE serv = ‘D050’ Dans ce type d’instruction INSERT, le nombre de colonnes à insérer doit être le même que celui des colonnes spécifiées dans l’instruction SELECT et les colonnes doivent être identiques dans les deux instructions (comme c’est le cas avec une liste de valeurs dans l’autre type d’instruction INSERT). Par exemple, la première colonne insérée correspond à la première colonne sélectionnée, la deuxième à la deuxième colonne sélectionnée, et ainsi de suite. La taille et le type de données de ces colonnes correspondantes doivent être compatibles. Chaque colonne de la liste SELECT doit avoir un type de données accepté par le pilote client ODBC ou JDBC pour une opération INSERT/UPDATE sur la colonne correspondante de la liste INSERT. Les valeurs sont tronquées si la taille de la valeur de la colonne SELECT est supérieure à celle de la colonne INSERT correspondante. L’instruction SELECT est évaluée avant l’insertion des valeurs. UPDATE L’instruction UPDATE permet de modifier les enregistrements d’une table de base de données. La syntaxe de cette instruction est la suivante : UPDATE nom_table SET nom_col = expr, ... [ WHERE { conditions } ] nom_col est le nom d’une colonne dont la valeur doit être modifiée. Vous pouvez modifier plusieurs colonnes dans la même instruction. expr est la nouvelle valeur de la colonne. Généralement, les expressions sont les valeurs constantes des colonnes (mais il peut également s’agir d’une sous-requête). Les valeurs de type chaîne de caractères doivent être placées entre guillemets simples ('). Pour inclure un guillemet simple (correspondant à une apostrophe) dans une valeur de type chaîne de caractères placée entre guillemets simples, utilisez deux guillemets simples consécutifs (par exemple 'L''instance'). Les sous-requêtes doivent être entre parenthèses. La clause WHERE peut être toute clause valide. Elle détermine les enregistrements à modifier. Voici un exemple d’instruction UPDATE appliquée à la table Employés : 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 réunissant les conditions définies dans la clause WHERE. Ici, il s’agit de changer le salaire et le statut d’exemption pour tous les employés dont le numéro d’identification est E10001. Les numéros d’identification étant uniques dans la table Employés, un seul enregistrement est mis à jour. Voici un exemple comportant une sous-requête : UPDATE emp SET salaire = (SELECT avg(salaire) from emp) WHERE id_emp = 'E10001' Ici, le salaire de l’employé dont le numéro d’identification est E10001 est remplacé par le salaire moyen de la société. Remarque Dans les rubriques Multimédia, vous ne pouvez utiliser UPDATE qu'avec du texte, à moins de préparer une déclaration paramétrée et de générer le flux de données depuis votre application. Pour utiliser des données binaires, vous devez spécifier le type dans une fonction PutAs() : PutAs(col, 'type'), où la valeur du type est un type comme décrit dans la section « Sélection du contenu d’une rubrique Multimédia : fonctions CAST() et GetAs() » page 42. CREATE TABLE L’instruction CREATE TABLE permet de créer une table dans un fichier de base de données. La syntaxe de cette instruction est la suivante : CREATE TABLE nom_table liste_éléments_de_table [DEFAULT expr][UNIQUE][NOT NULL] Dans cette instruction, vous devez indiquer le nom et le type de données de chaque colonne. 1 nom_table et liste_éléments_de_table sont limités à 100 caractères chacun. 1 Le mot-clé DEFAULT vous permet de définir une valeur par défaut pour une colonne. Vous pouvez utiliser un élément littéral tel que CURRENT_USER, CURRENT_DATE, CURRENT_TIME ou CURRENT_TIMESTAMP. 1 Quand vous définissez une colonne comme UNIQUE, l’option de validation Unique est sélectionnée automatiquement pour la rubrique correspondante dans le fichier de base de données FileMaker. 1 Quand vous définissez une colonne en tant que NOT NULL, l’option de validation Non vide est sélectionnée automatiquement pour la rubrique correspondante dans le fichier de base de données FileMaker. La rubrique est marquée en tant que Valeur requise dans l’onglet Rubriques de la boîte de dialogue Gérer la base de données 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 numérique 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 L’instruction ALTER TABLE permet de modifier la structure d’une table existante d’un fichier de base de données. Chaque instruction ne permet de modifier qu’une colonne. La syntaxe de cette instruction est la suivante : ALTER TABLE nom_table ADD [COLUMN] définition_colonne ALTER TABLE nom_table DROP [COLUMN] nom_colonne_non_qualifié ALTER TABLE nom_table ALTER [COLUMN] définition_colonne SET DEFAULT expr ALTER TABLE nom_table ALTER [COLUMN] définition_colonne DROP DEFAULT Vous devez connaître la structure de la table et savoir comment vous souhaitez la modifier avant d’utiliser l’instruction 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) Définir la valeur par défaut d'une colonne ALTER TABLE Vendeurs ALTER Société SET DEFAULT 'FileMaker' Supprimer la valeur par défaut d'une colonne ALTER TABLE Vendeurs ALTER Société DROP DEFAULT Remarque SET DEFAULT et DROP DEFAULT n'affectent pas les rangées existantes de la table, mais modifient la valeur par défaut des rangées ajoutées par la suite à la table. CREATE INDEX L’instruction CREATE INDEX permet d’accélérer les recherches dans un fichier de base de données. 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 qu’avec une colonne unique (les index multi-colonne ne sont pas pris en charge). Les index ne sont pas autorisés 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 stockées. Quand vous créez un index pour une colonne de type texte, l’option de stockage Minimal est sélectionnée automatiquement dans Indexation pour la rubrique correspondante du fichier de base de données FileMaker. Quand vous créez un index pour une colonne qui n’est pas de type texte (ou pour une colonne de type texte au format japonais), l’option de stockage Tout est sélectionnée automatiquement dans Indexation pour la rubrique correspondante du fichier de base de données FileMaker. Quand vous créez un index pour une colonne, l’option de stockage Indexation automatique si nécessaire est sélectionnée automatiquement dans Indexation pour la rubrique correspondante du fichier de base de données FileMaker. FileMaker crée automatiquement les index selon les besoins. L'utilisation de CREATE INDEX entraîne la génération immédiate de l'index plutôt qu'à la demande. Exemple CREATE INDEX ON Vendeurs.ID_vendeur DROP INDEX, instruction L’instruction DROP INDEX permet de supprimer un index d’un fichier de base de données. 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 données est trop volumineux ou quand vous n’employez pas souvent une rubrique dans les requêtes. Si les performances de vos requêtes ne sont pas satisfaisantes et si vous travaillez sur un fichier de base de données FileMaker extrêmement volumineux contenant un grand nombre de rubriques de type texte indexées, 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, l’option de stockage Aucun est sélectionnée et l’option Indexation automatique si nécessaire est désélectionnée automatiquement dans Indexation pour la rubrique correspondante du fichier de base de données FileMaker. L’attribut PREVENT INDEX CREATION n’est 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 d’un jeu d’enregistrements. 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 précéder l’expression de colonne de l’opérateur DISTINCT pour éliminer les doublons. Par exemple : COUNT (DISTINCT nom_famille) Dans cet exemple, seules les valeurs de nom de famille uniques sont comptées. Exemples Fonctions statistiques Résultat SUM Total des valeurs d’une expression de rubrique de type numérique. Par exemple, SUM(SALAIRE) renvoie la somme de toutes les valeurs de la rubrique SALAIRE. AVG Moyenne des valeurs d’une expression de rubriques de type numérique. Par exemple, AVG(SALAIRE) renvoie la moyenne de toutes les valeurs de la rubrique SALAIRE. COUNT Nombre de valeurs d’une 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 spéciale qui renvoie le nombre d’enregistrements du jeu, en incluant ceux qui contiennent des valeurs nulles. MAX Valeur maximale d’une expression de rubrique. Par exemple, MAX(SALAIRE) renvoie la valeur maximale de la rubrique SALAIRE. MIN Valeur minimale d’une 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 requêtes de base de données complexes. Les éléments d’expression valides sont les suivants : Noms de rubriques Opérateurs numériques opérateurs relationnels ; Constantes Opérateurs de caractères Opérateurs logiques notation en virgule flottante ; Opérateurs de dates Fonctions Noms de rubriques L’expression 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 l’expression 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 placées entre guillemets simples ('). Pour inclure un guillemet simple (correspondant à une apostrophe) dans une constante de type chaîne de caractères placée entre guillemets simples, utilisez deux guillemets simples consécutifs (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'année à 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} Vérifiez que Type de données : Année à 4 chiffres n’est pas sélectionnée comme option de validation dans le fichier de base de données FileMaker pour une rubrique qui utilise cette syntaxe d’année à deux chiffres. N.B. : La syntaxe d'année à 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 l’heure, utilisez le format de la locale du fichier de base de données. Par exemple, si la base de données a été créée sur un système italien, respectez les formats italiens de date et d’heure. Chapitre 7 | Standards pris en charge 51 Notification en virgule flottante/scientifique Les nombres peuvent être exprimés à l'aide d'une notation scientifique. Exemple SELECT colonne1 / 3.4E+7 FROM table1 WHERE calc < 3.4E-6 * colonne2 Opérateurs numériques Vous pouvez inclure les opérateurs suivants dans une expression numérique : +, -, *, /, et ^ ou ** (puissance). Vous pouvez faire précéder une expression numérique d’un plus (+) ou d’un moins (-) unaire. Opérateurs de caractères Vous pouvez concaténer des caractères. Exemples Dans les exemples suivants, nom_famille a pour valeur 'MARTIN ' et prénom 'ROBERT ' : Opérateur Concaténation Exemple Résultat + Laisse les espaces finaux à leur place prénom + nom_famille 'ROBERT MARTIN ' - Déplace les espaces finaux à la fin prénom - nom_famille 'ROBERTMARTIN ' Opérateurs de dates Vous pouvez modifier des dates. Exemples Dans les exemples suivants, date_embauche correspond à {D '30/01/2008'}. Opérateur Effet sur la date Exemple Résultat + 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 d’une date date_embauche - {D '01/01/2008'} date_embauche - 10 29 {D '20/01/2008'} Exemples supplémentaires : 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 Opérateurs relationnels Opérateur Signification = Egal <> N’est pas égal à > Supérieur à >= Supérieur ou égal à < Inférieur à <= Inférieur ou égal à LIKE Identique à une structure NOT LIKE Pas identique à une structure IS NULL A une valeur nulle IS NOT NULL N’a pas de valeur nulle BETWEEN Plage de valeurs entre une limite inférieure et une limite supérieure IN Membre d’un jeu de valeurs indiquées ou d’une sous-requête NOT IN Non membre d’un jeu de valeurs indiquées ou d’une sous-requête EXISTS Renvoie True (Vrai) si une sous-requête a renvoyé au moins un enregistrement ANY Compare une valeur à chaque valeur renvoyée par une sous-requête (l’opérateur doit être précédé de =, <>, >, >=, < ou <=); =Any est équivalent à In ALL Compare une valeur à chaque valeur renvoyée par une sous-requête (l’opérateur doit être précédé 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_Société FROM Informations_Ventes WHERE Informations_Ventes.Nom_Société LIKE '%Université' SELECT Informations_Ventes.Nom_Société FROM Informations_Ventes WHERE Informations_Ventes.Nom_Société 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) Opérateurs logiques Vous pouvez combiner deux conditions ou davantage. Ces conditions doivent être liées par AND ou OR, sous la forme : salaire = 40000 AND exempt = 1 L’opérateur logique NOT sert à inverser la signification, sous la forme : NOT (salaire = 40000 AND exempt = 1) Exemples SELECT * FROM Informations_Ventes WHERE Informations_Ventes.Nom_Société NOT LIKE '%Université' AND Informations_Ventes.Montant > 3000 SELECT * FROM Informations_Ventes WHERE (Informations_Ventes.Nom_Société 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 chaînes de caractères, d’autres des nombres et d’autres des dates. 54 Guide ODBC et JDBC FileMaker Fonctions qui renvoient des chaînes de caractères Fonctions qui renvoient des chaînes de caractères Description Exemple CHR Convertit un code ASCII en chaîne d’un caractère CHR(67) renvoie C CURRENT_USER Renvoie le nom d’utilisateur employé pour établir la connexion DAYNAME Renvoie le nom du jeu correspondant à une date précise RTRIM Supprime les espaces finaux d’une chaîne TRIM Supprime les espaces de début et finaux d’une chaîne TRIM(' ABC ') renvoie 'ABC' LTRIM Supprime les espaces de début d’une chaîne UPPER Transforme chaque lettre d’une chaîne en majuscule UPPER('Alain') renvoie 'ALAIN' LOWER Transforme chaque lettre d’une chaîne en minuscule LOWER('Alain') renvoie 'alain' LEFT Renvoie les caractères les plus à gauche d’une chaîne LEFT('Mathieu',3) renvoie 'Mat' MONTHNAME Renvoie le nom du mois calendaire. RIGHT Renvoie les caractères les plus à droites d’une chaîne RIGHT('Mathieu',4) renvoie 'hieu' SUBSTR SUBSTRING Renvoie une sous-chaîne de chaîne avec les SUBSTR('Conrad',2,3) renvoie 'onr' paramètres de la chaîne, le premier caractère à extraire SUBSTR('Conrad',2) renvoie 'onrad' et le nombre de caractères à extraire (facultatif) SPACE Génère une chaîne d’espaces SPACE(5) renvoie ' STRVAL Convertit une valeur de n’importe quel type en chaîne de caractères 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 l’heure du jour sous forme de chaîne A 21 h 49, TIME() renvoie 21:49:00 USERNAME USER Renvoie le nom d’utilisateur employé pour établir la connexion RTRIM(' ABC ') renvoie' ABC' LTRIM(' ABC ') renvoie 'ABC' ' Remarque La fonction TIME() n'est plus utilisée. 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 numérique ATAN Renvoie la tangente inverse de l'argument sous la forme d'un angle exprimé en radians ATAN2 Renvoie la tangente inverse des coordonnées x et y sous la forme d'un angle exprimé en radians B Renvoie l’équivalent décimal d’un nombre binaire CEIL CEILING Renvoie le plus petit entier supérieur ou égal à l'argument DEG DEGREES Renvoie le nombre de degrés de l'argument, qui est un angle exprimé en radians DAY Renvoie la partie d’une date correspondant au jour DAY({d '30/01/2010'}) renvoie 30 DAYOFWEEK Renvoie le jour de la semaine (de 1 à 7) d’une 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 népérien (e) élevé à la puissance spécifiée par l'argument FLOOR Renvoie le plus grand entier inférieur ou égal à l'argument HOUR Renvoie la partie d’une valeur correspondant à l'heure INT Renvoie la partie entière d’un nombre INT(6.4321) renvoie 6 LEN LENGTH Renvoie la longueur d’une chaîne LEN('ABC') renvoie 3 MONTH Renvoie la partie d’une date correspondant au mois MONTH({d '30/01/2010'}) renvoie 1 LN LOG Renvoie le logarithme népérien 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 d’une valeur correspondant aux minutes NUMVAL Convertit une chaîne de caractères en nombre. Si la chaîne NUMVAL('123') renvoie 123 de caractères n’est pas valide, renvoie 0 PI Renvoie la valeur de constante de la constante mathématique pi POW Elève 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 degrés ROUND Arrondit un nombre SECOND Renvoie la partie d’une valeur correspondant aux secondes SIGN Indicateur du signe de l'argument : -1 pour négatif, 0 pour 0 et 1 pour positif SIN Renvoie le sinus de l'argument SQRT Renvoie la racine carrée de l'argument TAN Renvoie la tangente de l'argument VAL Convertit une chaîne de caractères en nombre. Si la chaîne VAL('123') renvoie 123 de caractères n’est pas valide, renvoie 0 X Renvoie l’équivalent décimal d’un nombre hexadécimal X'b9' renvoie 185 YEAR Renvoie la partie d’une date correspondant à l’année 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 chaîne de caractères en date DATEVAL('01/30/2011') renvoie 30.01.11 Remarque La fonction DATE() n'est plus utilisée. Utilisez le standard SQL CURRENT_DATE pour la remplacer. Chapitre 7 | Standards pris en charge 57 Ordre de priorité des opérateurs Au fur et à mesure que les expressions se compliquent, l’ordre dans lequel elles sont évaluées devient important. Le tableau suivant montre dans quel ordre les opérateurs sont évalués. Les opérateurs de la première ligne sont évalués en premier et ainsi de suite. Les opérateurs qui figurent sur une même ligne sont évalués de gauche à droite dans l’expression. Ordre de priorité Opérateur 1 '-' unaire, '+' unaire 2 ^, ** 3 *, / 4 +, - 5 =, <>, <, <=, >, >=, Like, Not Like, Is Null, Is Not Null, Between, In, Exists, Any, All 6 Not 7 AND 8 OR L’exemple suivant montre l’importance de l’ordre de priorité : WHERE salaire > 40000 OR date_embauche > {d '30/01/2008'} AND serv = 'D101' Comme l’opérateur AND est évalué en premier, cette requête extrait les employés du service D101 embauchés après le 30.01.08, ainsi que les employés dont le salaire est supérieur à 40 000 euros quel que soit leur service ou leur date d’embauche. Pour forcer la clause à être évaluée dans un ordre différent, utilisez des parenthèses pour spécifier les conditions à évaluer en premier. Par exemple : WHERE (salaire > 40000 OR date_embauche > {d '30/01/2008'}) AND serv = 'D101' extrait les employés du service D101 dont le salaire est supérieur à 4 000 euros ou qui ont été embauchés après 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 stockées et reportées sous forme de noms d'élément uniques (nom de table seulement). 1 1 1 1 SQLColumns SQLColumnPrivileges SQLDescribeCol SQLGetTypeInfo 58 Guide ODBC et JDBC FileMaker Fonctions de métadonnées JDBC Le pilote client JDBC prend en charge les fonctions de métadonnées suivantes : 1 getColumns 1 getColumnPrivileges 1 1 1 1 getMetaData getTypeInfo getTables getTableTypes Mots-clés SQL réservés Le tableau suivant liste les mots-clés réservés qui ne doivent pas être utilisés comme noms de colonnes, de tables, d’alias ou d’autres objets définis par l’utilisateur. Si vous obtenez des erreurs de syntaxe, ces erreurs peuvent être dues à l’utilisation de l’un de ces mots-clés réservés. Si vous souhaitez utiliser l’un de ces motsclés, utilisez des guillemets pour éviter que le mot soit traité comme un mot-clé. Chapitre 7 | Standards pris en charge Par exemple, l’instruction Create Table suivante montre comment utiliser le mot-clé « OID » comme nom d’élément de données. 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 référence Correspondances entre les rubriques FileMaker et les types de données ODBC Le tableau suivant présente les correspondances entre les types de données FileMaker et ODBC standard. Type de rubrique FileMaker Type de données ODBC correspondant après conversion Texte SQL_VARCHAR La longueur maximale d’une colonne de texte est de 1 million de caractères, à moins que vous ne fixiez une limite inférieure à l’aide de l’option Nombre maximal de caractères pour la rubrique de type texte dans FileMaker. FileMaker renvoie les chaînes vides sous la forme NULL. Nombre SQL_DOUBLE Le type de rubrique nombre de FileMaker peut contenir des valeurs positives ou négatives 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 Précisions sur ce type de données Le type de rubrique heure de FileMaker peut contenir l’heure du jour ou un intervalle de temps. Un intervalle de temps est renvoyé sous forme d’heure du jour, à moins qu’il ne soit inférieur à 0 ou supérieur à 24 (auquel cas la valeur renvoyée est 0). Depuis une rubrique Multimédia, vous pouvez récupérer des données binaires, des informations des informations de référence de fichier ou des données appartenant à un type de fichier particulier. Au sein d’une instruction SELECT, utilisez la fonction CAST pour récupérer les informations de référence du fichier, de même que la fonction GetAs pour récupérer les données d’un type de fichier en particulier. Le résultat est converti dans le type de données ODBC correspondant. La longueur des chaînes est facultative dans les déclarations de table. Toutes les chaînes sont stockées et extraites au format Unicode. Remarque Les rubriques multivaluées de FileMaker sont prises en charge de la même façon 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 données JDBC Le pilote client JDBC emploie les correspondances suivantes pour convertir des types de données FileMaker en types de données SQL JDBC. (Pour plus d’informations sur ces types, consultez les pages Web de documentation du JDK 1.5 disponibles à l’adresse www.javasoft.com.) Type de rubrique FileMaker Type SQL JDBC correspondant après 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 Multimédia java.sql.Types.BLOB Calcul varie suivant le type de données du résultat du calcul Le pilote client JDBC convertit le type de données calcul de FileMaker en type SQL JDBC correspondant au résultat du calcul. Par exemple, le pilote client JDBC convertit un calcul FileMaker qui génère un résultat de type horodatage en type java.sql.Types.TIMESTAMP. Messages d’erreur ODBC et JDBC Cette annexe présente le format de base des messages d’erreur que vous pouvez recevoir en travaillant avec FileMaker et ODBC/JDBC. Messages d’erreur ODBC Si vous obtenez des messages d’erreur, ils peuvent provenir de différentes sources : 1 Pilote ODBC 1 FileMaker et port d'écoute FileMaker xDBC Messages d’erreur FileMaker ODBC Si une erreur se produit au niveau du port d'écoute FileMaker ou de la source de données, le message précise le nom de cette source de données et se présente de la façon suivante : [FileMaker] [FileMaker ODBC] message Une source de données FileMaker, par exemple, peut renvoyer un message d’erreur comme celui-ci : [FileMaker] [FileMaker ODBC] Nom d'utilisateur/mot de passe non valide Un message d’erreur de ce type signale que vous avez effectué une opération incorrecte dans le système de base de données. Pour plus d’informations, consultez votre documentation FileMaker ou demandez conseil à l’administrateur de la base de données. Les messages suivants mentionnant des erreurs dans des colonnes différentes s’affichent parfois dans un nom de colonne incorrect. Chapitre 8 | Informations de référence 63 Messages d’erreur JDBC Le pilote FileMaker JDBC signale les erreurs à l’application à l’origine de l’appel en renvoyant des exceptions SQL. Si vous obtenez des messages d’erreur, ils peuvent provenir de différentes sources : 1 le pilote JDBC ; 1 FileMaker et port d'écouter FileMaker xDBC Messages d’erreur FileMaker JDBC Si une erreur se produit au niveau du port d'écoute FileMaker ou de la source de données, le message précise le nom de cette source de données et se présente de la façon suivante : [FileMaker] [FileMaker JDBC] message Une source de données FileMaker, par exemple, peut renvoyer un message d’erreur comme celui-ci : [FileMaker] [FileMaker JDBC] Nom d'utilisateur/mot de passe non valide Un message d’erreur de ce type signale que vous avez effectué une opération incorrecte dans le système de base de données. Pour plus d’informations, consultez votre documentation FileMaker ou demandez conseil à l’administrateur de la base de données. 64 Guide ODBC et JDBC FileMaker Index A D accès à distance 9 Accès via ODBC/JDBC, privilège étendu 23 Administrateur de source de données 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 désactivation d’un fichier de base de données FileMaker partagé 10 données binaires utiliser dans SELECT 42 DROP INDEX, instruction SQL 48 B base de données, DSN 24 base de données, nombre de connexions prises en charge 9 C ce mot de passe avec JDBC 34 avec ODBC 25, 27 chaîne vide utiliser dans SELECT 42 clés générées automatiquement 32 comptes et privilèges 23 configuration d’une source de données FileMaker via JDBC 34 via ODBC (Mac OS) 26 via ODBC (Windows) 23 configuration requise pour l’installation 15, 29 Configuration réseau requise 10 configuration système requise 15, 29 conformité avec la norme SQL 37 conformité avec les normes 37 connexions, base de données 9 constantes dans les expressions SQL 50 correspondance de types de données 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, privilèges 23 exceptions SQL 63 expressions SQL 49 constantes 50 fonctions 53 littéraux 50 noms de rubriques 49 notation en virgule flottante ou scientifique 51 opérateurs de caractères 51 opérateurs de dates 51 opérateurs logiques 53 opérateurs numériques 51 opérateurs relationnels 52 ordre de priorité 57 F fichiers configuration de l’accès à 23 organisation sur un seul ordinateur 9 utiliser dans les rubriques Multimédia 43 fichiers bitmap dans les rubriques Multimédia 43 fichiers image dans les rubriques Multimédia 43 fichiers QuickTime dans les rubriques Multimédia 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 chaînes 54 fonctions de métadonnées 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 d’erreur 62 FROM, clause SQL 39 FULL OUTER JOIN 39 G GROUP BY, clause SQL 40 H HAVING, clause SQL 40 hôte, 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-clés réservés 58 prises en charge par les pilotes clients 37 SELECT 37 UPDATE 45 | J Java, version 29 JDBC description 31 messages d’erreur 63 pilote client, description 32 procédure d’utilisation 7 JDK (Java Development Kit) 32 jointure 39 L LEFT JOIN 39 LEFT OUTER JOIN 39 littéraux dans les expressions SQL 50 M Mac OS Configuration requise pour le pilote client JDBC 29 Configuration requise pour le pilote client ODBC 15 création d’une source de données 26 vérification de l’accès à ODBC 27 mises à jour et suppressions positionnées 41 mots-clés SQL réservés 58 mots-clés, SQL réservés 58 N noms de colonne 23 noms de rubriques dans les expressions SQL 49 noms de source de données. Voir sources de données 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 d’erreur 62 procédure d’utilisation 7 rubriques multivaluées 61 ODBC Administrator (Mac OS) 27 opérateur ALL 52 opérateur AND 53 opérateur ANY 52 Index 67 opérateur BETWEEN 52 opérateur DISTINCT 38 opérateur EXISTS 52 opérateur IN 52 opérateur IS NOT NULL 52 opérateur IS NULL 52 opérateur LIKE 52 opérateur NOT 53 opérateur NOT IN 52 opérateur NOT LIKE 52 opérateur OR 53 opérateurs de caractères dans les expressions SQL 51 opérateurs de dates dans les expressions SQL 51 opérateurs logiques dans les expressions SQL 53 opérateurs numériques dans les expressions SQL 51 opérateurs relationnels dans les expressions SQL 52 ORDER BY, clause SQL 41 ordre de priorité des opérateurs 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 d’accès principal du pilote 32 enregistrement avec le gestionnaire de pilotes JDBC 33 fonctions de métadonnées 58 prise en charge Unicode 37 spécification de l’URL JDBC 32 tables externes 37 types de données, correspondance 62 vérification de l’accès 35 pilote client ODBC fonctions de catalogue 57 prise en charge Unicode 37 tables externes 37 types de données, correspondance 61 vérification de l’accès (Mac OS) 27 vérification de l’accès (Windows) 25 pilotes désinstallation de l’ancien 10 port, spécification pour JDBC 30 présentation configuration des privilèges et du partage 23 utilisation d’ODBC 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 privilèges étendus 23 Produits FileMaker 9 propriétés 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 Multimédia FileMaker avec l'instruction INSERT 45 avec l’instruction SELECT 42 avec l’instruction UPDATE 46 correspondance de types de données JDBC 62 correspondance de types de données ODBC 61 rubriques correspondance avec JDBC 62 correspondance avec ODBC 61 rubriques multivaluées 61 S SELECT, instruction SQL 37 chaîne vide 42 données binaires 42 type de données Conteneur 42 source de données configuration pour accès via ODBC ( Mac OS) 26 configuration pour l’accès via JDBC 34 configuration pour l’accès via ODBC (Windows) 23 désactivation d’un fichier de base de données FileMaker partagé 10 une source de données pour chaque fichier de base de données FileMaker 10 vérification de l'accès via ODBC (Mac OS) 27 vérification de l’accès via JDBC 35 vérification de l’accès via ODBC (Windows) 25 source de données serveur 26 sources de données création (Mac OS) 26 création (Windows) 23 une par fichier 10 sous-requêtes 44 SPI JDBC 32 SQL, expressions 49 SQL, fonctions statistiques 49 SQL-92 37 T tables externes 37 test d’accès pilote client JDBC 35 pilote client ODBC (MacOS) 27 pilote client ODBC (Windows) 25 type de données ARRAY 32 type de données booléen 32 type de données CLOB 32 type de données Conteneur utiliser dans CREATE TABLE 47 utiliser dans SELECT 42 type de données DATALINK 32 type de données REF 32 type de données SQL_C_WCHAR 37 types de données, correspondance pilote client JDBC 62 pilote client ODBC 61 U UNION (opérateur 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 vérification de l’accès 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 création d’une source de données 23 vérification de l’accès à ODBC 25