Connexions aux bases de données dans ArcGIS for Desktop
Vous pouvez vous connecter aux bases de données à partir d'ArcGIS pour afficher, interroger et analyser les données qu'elles contiennent. Certaines bases de données auxquelles vous accédez peuvent contenir des tables de géodatabase, des fonctions et des procédures, mais ce n'est pas obligatoire. Vous pouvez vous connecter à toute base de données prise en charge et afficher les données à partir d'ArcGIS for Desktop.
Pour toutes les bases de données prises en charge, à l'exception de SQLite, vous pouvez vous connecter à la base de données en ajoutant une connexion à une base de données sous le nœud Connexions aux bases de données dans l'arborescence du Catalogue dans ArcGIS for Desktop. Lorsque vous procédez ainsi, un fichier contenant les informations de connexion à une base de données que vous fournissez est créé sur l'ordinateur client. L'emplacement par défaut du fichier est \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog, mais vous pouvez placer la connexion à un autre endroit. Veillez simplement à ce que les utilisateurs et les applications qui doivent établir une connexion disposent d'un accès en lecture sur le répertoire dans lequel se trouve le fichier de connexion.
Si vous utilisez les données de cette connexion comme source pour un service, tel qu'un service de géotraitement ou de géocodage, il vous faudra peut-être placer le fichier de connexion dans un emplacement partagé sur votre réseau. Reportez-vous à la rubrique Préparation de ressources pour la publication sous forme de services pour en savoir plus sur le partage d'un fichier de connexion.
Même si vos fichiers de connexion ont été créés avant 10.1, vous pouvez les utiliser. Toutefois, si vous devez créer une connexion à votre géodatabase à l'aide d'un service ArcSDE, utilisez l'outil de géotraitement Créer un fichier de connexion à ArcSDE.
Lorsque vous vous connectez à une base de données, vous choisissez le type de base de données auquel vous vous connectez, puis fournissez des informations afin d'aider ArcGIS à localiser la base de données, ainsi que des informations d'authentification pour vous permettre de vous connecter à la base de données.
Plateforme et propriétés de base de données
La valeur que vous choisissez dans la liste déroulante Plateforme de la base de données indique le type de base de données auquel vous souhaitez vous connecter. Les champs disponibles dans la boîte de dialogue, et donc les informations que vous fournissez pour établir la connexion, dépendent du type de plate-forme de base de données que vous choisissez.
Les sections suivantes expliquent quand choisir chaque plate-forme de base de données et les informations complémentaires nécessaires à la connexion :
DB2
Choisissez DB2 dans la liste déroulante Plateforme de la base de données pour vous connecter à une base de données DB2 IBM sur un serveur Linux, UNIX ou Windows, ou connectez-vous directement à une géodatabase dans une base de données DB2 sur un serveur Linux, UNIX ou Windows.
Lorsque vous vous connectez à DB2, vous devez fournir le nom de la base de données DB2 cataloguée dans la zone de texte Source de données. Ou, si la base de données n'est pas cataloguée, vous pouvez utiliser la syntaxe suivante pour vous connecter :
HostName=<hôte>;Port=<numéro de port>;Database=<nom de base de données>;
Indiquez les informations associées à votre site. Par exemple, si votre base de données DB2 est sur le serveur cube, si elle utilise le port SGBD 50000, et si le nom de la base de données est spdata, la chaîne de connexion est la suivante :
HostName=cube;Port=50000;Database=spdata;
Ce type de chaîne de connexion est une connexion sans nom de source de données.
Vous ne pouvez pas utiliser une connexion DSNless pour activer des fonctionnalités de géodatabase ou mettre à niveau une géodatabase.
DB2 pour z/OS
Choisissez DB2 pour z/OS dans la liste déroulante Plateforme de la base de données si vous souhaitez vous connecter à un sous-système de base de données DB2 sur un système d'exploitation z (z/OS) ou une géodatabase d'un sous-système de base de données DB2 sur z/OS.
Lorsque vous vous connectez à DB2 pour un sous-système de base de données pour z/OS, vous devez fournir le nom du sous-système de la base de données DB2 cataloguée dans la zone de texte Source de données.
Si vous ne cataloguez pas le sous-système de la base de données, vous pouvez utiliser la chaîne de connexion indiquée pour DB2 à la section précédente.
Informix
Choisissez Informix dans la liste déroulante Plateforme de la base de données pour vous connecter à une base de données IBM Informix, ou connectez-vous directement à une géodatabase dans une base de données Informix.
Lorsque vous vous connectez à Informix, vous devez fournir le nom de la source de données ODBC (Open Database Connectivity) de la base de données Informix dans la zone de texte Source de données.
Si vous ne configurez pas de nom de source de données ODBC, vous pouvez utiliser la syntaxe suivante pour vous connecter :
HostName=<serveur où Informix est installé>;ServerName=<serveur Informix>;ServiceName=<nom du service défini dans le fichier de services>;Database=<nom de la base de données Informix>
Indiquez les informations associées à votre site. Par exemple, si votre instance Informix se trouve sur le serveur hirise, si le nom de l'instance est superids, si elle utilise le port 54321, et si le nom de la base de données est gisdata, la chaîne de connexion sera la suivante :
HostName=hirise;ServerName=superids;ServiceName=54321;Database=gisdata
Ce type de chaîne de connexion est une connexion sans nom de source de données.
Même si vous n'avez pas besoin de configurer un nom de source de données ODBC pour utiliser une connexion sans nom de source de données, vous devez tout de même enregistrer le serveur Informix via SetNet32. Notez également que vous ne pouvez pas utiliser de connexion sans nom de source de données pour activer des fonctionnalités de géodatabase dans une base de données Informix ou mettre à niveau une géodatabase.
Netezza
Sélectionnez Netezza dans la liste déroulante Plateforme de la base de données pour vous connecter à une base de données dans une appliance d'entrepôt de données Netezza.
Lorsque vous vous connectez à une base de données Netezza, vous devez fournir le nom de la source de données ODBC de la base de données Netezza dans la zone de texte Source de données.
Si vous ne configurez pas de nom de source de données ODBC, vous pouvez utiliser la syntaxe suivante pour vous connecter :
ServerName=<hôte>;Port=<numéro de port>;Database=<nom de base de données>
Indiquez les informations associées à votre site. Par exemple, si votre appareil de stockage de données Netezza se trouve sur le serveur ndwa, s'il utilise le port 5480, et si le nom de la base de données est spatial, la chaîne de connexion sera la suivante :
ServerName=ndwa;Port=5480;Database=spatial
Oracle
Choisissez Oracle dans la liste déroulante Plateforme de la base de données pour vous connecter à une base de données Oracle, ou connectez-vous directement à une géodatabase dans une base de données Oracle.
Lorsque vous vous connectez à Oracle, indiquez le nom TNS Oracle dans la zone de texte Instance ou indiquez une des chaînes Easy Connect d'Oracle suivantes :
- Nom de l'élément Serveur Oracle/Nom ou ID de service Oracle
Par exemple, si Oracle est installé dans myserver et que myosvc est le nom du service Oracle, tapez la syntaxe suivante :
myserver/myosvc
- Nom de l'élément Serveur Oracle:Numéro de port Oracle/Nom ou ID de service Oracle
Dans cet exemple, Oracle est installé dans myserver, écoute sur le port 60000, et myoservice est le nom du service Oracle.
myserver:60000/myoservice - Adresse URL du serveur Oracle
L'URL de l'instance illustrée dans le dernier exemple serait la suivante :
//myserver:60000/myoservice - Nom du serveur Oracle (Vous pouvez l'utiliser si le processus d'écoute Oracle sur le serveur est configuré pour pointer sur une instance par défaut.)
- Adresse IP du serveur Oracle/Nom ou ID de service Oracle
Par exemple, si l'adresse du serveur est 10:10:10:10 et que le nom du service Oracle est orasvc, tapez 10:10:10:10/orasvc.
Pour les adresses IPV6, placez l'adresse entre crochets. Par exemple : [4000:vu5:0:0:f666:h191:77f5:i2rs]/orasvc
- Adresse IP du serveur Oracle:Numéro de port Oracle/Nom ou ID de service Oracle
Dans cet exemple, l'adresse IP est 10:20:30:40, le port est 59999, et le service Oracle myomy1: 10:20:30:40:59999/myomy1.
Une adresse IPV6 pour les mêmes port et service aurait l'aspect suivant : [6543:eo4:0:1:f587:l249:12f9:w3ud]:59999/myomy110:20:30:40:59999/myomy1
Vérifiez que votre instance Oracle est configurée de façon à autoriser Easy Connect. Si le client Oracle complet est installé, mais que vous souhaitez utiliser la syntaxe Easy Connect pour vous connecter, veillez à ce que le fichier sqlnet.ora sur le client soit configuré de façon à autoriser l'utilisation d'Easy Connect et à ce que le serveur Oracle soit configuré pour autoriser la syntaxe Easy Connect. Notez également que si votre instance d'Oracle n'écoute pas sur le numéro de port Oracle par défaut, vous devez utiliser la syntaxe de connexion incluant le numéro de port.
PostgreSQL
Choisissez PostgreSQL dans la liste déroulante Plateforme de la base de données pour vous connecter à une base de données PostgreSQL, ou connectez-vous directement à une géodatabase dans une base de données PostgreSQL.
Lorsque vous vous connectez à PostgreSQL, vous devez préciser une instance et une base de données.
L'instance est le nom ou l'adresse IP du serveur où PostgreSQL est installé. Par exemple, si le cluster de bases de données PostgreSQL se trouve sur le serveur ficus, tapez ficus dans la zone de texte Instance. Si vous spécifiez une adresse IPV6, placez-la entre crochets. Par exemple, si l'adresse IPV6 du serveur est 1111:aa1:0:1:f111:a222:33f3:b4bb, saisissez [1111:aa1:0:1:f111:a222:33f3:b4bb] dans la zone de texte Instance.
Si le cluster de bases de données PostgreSQL écoute sur un port autre que le port par défaut (5432), incluez le numéro de port dans l'instance. Par exemple, si PostgreSQL est installé sur le serveur mamabear et qu'il écoute sur le port 49200, saisissez mamabear,49200 dans la zone de texte Instance.
La base de données est le nom de la base de données spécifique sur le cluster de bases de données PostgreSQL auquel vous vous connectez. Vous pouvez saisir le nom de la base de données dans la zone de texte Base de données ou le sélectionner dans la liste déroulante. Le nom de la base de données est limité à 31 caractères.
SQL Server
Choisissez SQL Server dans la liste déroulante Plateforme de la base de données pour vous connecter à une base de données dans Microsoft SQL Server ou à une base de données SQL Windows Azure, ou connectez-vous directement à une géodatabase dans une base de données SQL Server.
Lorsque vous vous connectez à SQL Server ou à une base de données SQL, vous devez préciser une instance et une base de données.
L'instance est le nom de l'instance SQL Server ou de l'instance de base de données SQL. Par exemple, si le nom de l'instance de base de données SQL est cloudy4u.database.windows.net, saisissez cloudy4u.database.windows.net dans la zone de texte Instance. Si vous utilisez une instance SQL Server nommée terra\gis, tapez terra\gis dans la zone de texte Instance.
Si vous utilisez une instance SQL Server par défaut, vous pouvez spécifier le nom de l'instance ou l'adresse IP du serveur dans la zone de texte Instance. Si vous spécifiez une adresse IPV6, placez-la entre crochets. Par exemple, si l'adresse IPV6 du serveur est 2000:ab1:0:2:f333:c432:55f6:d7zz,, saisissez [2000:ab1:0:2:f333:c432:55f6:d7zz] dans la zone de texte Instance.
Si la base de données écoute sur un port autre que le port par défaut (1433), incluez le numéro de port dans l'instance. Par exemple, si l'instance de SQL Server est basset\spatial et qu'il écoute sur le port 61000, saisissez basset\spatial,61000 dans la zone de texte Instance.
La base de données est le nom de la base de données sur l'instance SQL Server ou l'instance de base de données SQL à laquelle vous vous connectez. Vous pouvez saisir le nom de la base de données dans la zone de texte Base de données ou le sélectionner dans la liste déroulante. Le nom de la base de données est limité à 31 caractères.
Le nom de la base de données est facultatif lorsque vous vous connectez à une instance de SQL Server, mais uniquement si vous souhaitez vous connecter à la base de données attribuée en tant que base de données par défaut dans l'instance SQL Server. Le nom de la base de données est requis lors d'une connexion à une base de données SQL.
Teradata
Choisissez Teradata dans la liste déroulante Plateforme de la base de données pour vous connecter à une base de données Teradata.
Lorsque vous vous connectez à Teradata, indiquez le nom de la source de données ODBC dans la zone de texte Source de données. Si vous n'avez pas configuré de nom de source de données ODBC, vous pouvez indiquer l'adresse IP du serveur Teradata au format dbcName=<adresse IP>. Par exemple, si le serveur a une adresse IPV4 correspondant à 200.30.200.10, tapez dbcName=200.30.200.10. Si le serveur a une adresse IPV6, indiquez-la entre crochets. Par exemple, pour un serveur dont l'adresse IPV6 est 3020:12z3:y4xw:5099:0:v678:u111:ts22, tapez dbcName=[3020:12z3:y4xw:5099:0:v678:u111:ts22].
Vous devez également utiliser l'authentification de la base de données et indiquer un nom d'utilisateur et un mot de passe valides. L'authentification du système d'exploitation n'est pas prise en charge.
Type d’authentification
Il existe deux options de connexion pour créer une connexion à une base de données ou une géodatabase d'entreprise : l'authentification de la base de données et l'authentification du système d'exploitation.
Authentification de la base de données.
Si vous choisissez Authentification de la base de données, vous devez fournir un nom d'utilisateur de base de données et un mot de passe valides dans les zones de texte Nom d'utilisateur et Mot de passe. La longueur maximale des noms d'utilisateur est de 30 caractères.
En dehors d'ArcGIS, vous pouvez créer dans SQL Server des noms d'utilisateurs qui contiennent des caractères spéciaux. Délimitez ces noms d'utilisateurs lorsque vous les utilisez. ArcGIS ajoute le délimiteur automatiquement lorsqu'il est transmis à SQL Server. Vous n'avez pas besoin d'inclure de délimiteur avec le nom de l'utilisateur. Par exemple, si votre nom d'utilisateur est map.user, tapez map.user et non "map.user" dans la zone de texte Nom d'utilisateur. Pour en savoir plus sur la délimitation des identifiants, consultez votre documentation SQL Server.
Décochez la case Enregistrer le nom d'utilisateur et le mot de passe si vous préférez ne pas enregistrer les informations de connexion avec la connexion. Cela peut vous aider à sécuriser la base de données. Toutefois, si vous procédez ainsi, vous serez invité à fournir un nom d'utilisateur et un mot de passe à chaque connexion. Notez également que l'option Enregistrer le nom d’utilisateur et le mot de passe doit être activée pour les fichiers de connexion offrant des services ArcGIS avec accès à la base de données ou à la géodatabase, ou si vous souhaitez utiliser la recherche dans le catalogue pour localiser les données accessibles via ce fichier de connexion.
Authentification du système d'exploitation
Si vous cliquez sur Authentification du système d'exploitation, vous n'avez pas besoin d'entrer un nom d'utilisateur et un mot de passe : la connexion est établie avec le nom de connexion et le mot de passe utilisés pour ouvrir une session dans le système d'exploitation. Si la connexion utilisée pour le système d'exploitation n'est pas une connexion de base de données valide, la connexion échoue. Certains systèmes de gestion de bases de données ne prennent pas en charge l'authentification du système d'exploitation.
Lorsque vous utilisez l'authentification du système d'exploitation dans SQL Server, l'identifiant de connexion au système d'exploitation est apparié à un utilisateur de base de données. Lorsque vous utilisez l'authentification du système d'exploitation dans Oracle, l'identifiant de connexion au système d'exploitation est préfixé par une chaîne os_authent_prefix (par défaut, OPS$) et stocké dans la table USERNAME. Le nombre maximal de caractères autorisés pour le nom d'utilisateur lors de la connexion à la géodatabase est de 30. Dans certains cas, ArcGIS entoure votre nom d'utilisateur de guillemets pour le transmettre à la base de données. Ces guillemets sont compris dans le nombre total de 30 caractères.