ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS for Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

Workflow : créer des tables avec SQL et les inscrire auprès de la géodatabase

Disponible avec une licence Standard ou Advanced.

  • Créer une table non spatiale avec SQL
  • Ajouter des données à une table non spatiale avec SQL
  • Créer une table spatiale avec SQL
  • Ajouter des données à une table spatiale avec SQL
  • Inscrire les tables dans la géodatabase
Complexité :
Intermédiaire
Conditions requises pour les données
Utiliser vos propres données
Objectif :
Créez des tables spatiales et non spatiales avec SQL, puis inscrivez-les dans la géodatabase.

Vous pouvez utiliser SQL pour créer des tables. Si la table contient une colonne spatiale, la table est considérée comme table spatiale. Vous pouvez utiliser SQL pour renseigner les tables spatiales et non spatiales avec des données. Une fois la table créée, vous pouvez l'inscrire auprès de la géodatabase afin qu'elle participe à la fonctionnalité de géodatabase.

Vous pouvez procéder ainsi si vous utilisez une application personnalisée pour créer des tables spatiales ou non spatiales ou pour recevoir des tables de base de données d'une autre agence ou d'un prestataire, mais que vous voulez bénéficier des avantages des fonctionnalités de géodatabase et d'ArcGIS.

De même, vous pouvez utiliser SQL pour définir des vues dans des tables spatiales et non spatiales. Si la définition de la vue comprend une colonne d'entiers qui contient des valeurs uniques pouvant être utilisées en tant qu'IdObjet, vous pouvez inscrire la vue auprès de la géodatabase. L'inscription d'une vue vous permet de stocker des informations sur le contenu de la vue (l'étendue et le type de géométrie, par exemple) et de définir des métadonnées dans la vue.

Ce workflow vous guide dans le processus de création d'une table non spatiale et spatiale à l'aide d'un client SQL, d'ajout de données aux tables et d'inscription des tables auprès de la géodatabase.

Créer une table non spatiale avec SQL

  1. Ouvrez un client SQL et connectez-vous à la base de données en tant qu'utilisateur avec les autorisations requises pour créer des tables dans la base de données.
  2. Utilisez une instruction CREATE TABLE pour créer une table non spatiale, nommée patients, qui contient des colonnes avec les noms suivants : PID, f_name, l_name et dwel_id.

    Oracle

    CREATE TABLE patients 
    (PID integer NOT NULL, f_name nvarchar2(25), l_name nvarchar2(38), dwel_id integer);
    

    PostgreSQL

    CREATE TABLE patients 
    (PID integer NOT NULL UNIQUE, f_name varchar(25), l_name varchar(38), dwel_id integer);
    

    Db2

    CREATE TABLE patients 
    (PID integer NOT NULL, f_name varchar(25), l_name varchar(38), dwel_id integer);
    

    Informix

    CREATE TABLE patients 
    (PID integer NOT NULL, f_name varchar(25), l_name varchar(38), dwel_id integer);
    

Ajouter des données à une table non spatiale avec SQL

Utilisez les instructions INSERT SQL pour ajouter des enregistrements à la table patients avec SQL.

  1. Insérez quatre enregistrements dans la table patients :

    Oracle

    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (1, 'wolfgang', 'bruker', 4301);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (2, 'ida', 'pastens', 4301);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (3, 'ricardo', 'montoya', 1001);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601);
    

    PostgreSQL

    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (1, 'wolfgang', 'bruker', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (2, 'ida', 'pastens', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (3, 'ricardo', 'montoya', 1001);
    INSERT INTO patients (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601);
    

    Db2

    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id) VALUES (1, 'wolfgang', 'bruker', 4301);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id) VALUES (2, 'ida', 'pastens', 4301);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id) VALUES (3, 'ricardo', 'montoya', 1001);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601);
    

    Informix

    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (1, 'wolfgang', 'bruker', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (2, 'ida', 'pastens', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (3, 'ricardo', 'montoya', 1001);
    INSERT INTO patients (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601);
    

Créer une table spatiale avec SQL

Vous pouvez également utiliser une instruction CREATE TABLE pour créer une table avec une colonne spatiale.

  1. Créez une table, nommée outbreaks, qui contient un nombre entier OID, un nombre entier dwel_id, une chaîne d'adresse, un nombre entier city_code et une colonne loc ST_Geometry :

    Oracle

    CREATE TABLE outbreaks 
    (OID integer NOT NULL, address nvarchar2(120), city_code integer, loc sde.st_geometry);
    

    PostgreSQL

    CREATE TABLE outbreaks 
    (OID integer NOT NULL UNIQUE, address varchar(120), city_code integer, loc sde.st_geometry);
    

    Db2

    CREATE TABLE outbreaks 
    (OID integer NOT NULL, address nvarchar2(120), city_code integer, loc st_geometry);
    

    Informix

    CREATE TABLE outbreaks 
    (OID integer NOT NULL UNIQUE, address varchar(120), city_code integer, loc st_geometry);
    

Ajouter des données à une table spatiale avec SQL

Insérez trois enregistrements dans la table outbreaks.

Remarque :

La valeur 0 dans ces instructions d'exemple est le SRID. Vous pouvez spécifier un nombre différent.

  1. Utilisez des instructions SQL INSERT et la fonction ST_Point pour ajouter des enregistrements à la table outbreaks :

    Oracle

    INSERT INTO OUTBREAKS (OID, address, city_code, loc)
    VALUES (1, 
    '1420 kirchestrasse', 
    43, 
    sde.st_geometry (0.00003, 0.00051, null, null, 4326)
    );
    INSERT INTO OUTBREAKS (OID, address, city_code, loc)
    VALUES (2, 
    '638 villa arbol', 
    10, 
    sde.st_geometry (0.00020, -0.00029, null, null, 4326)
    );
    INSERT INTO OUTBREAKS (OID, address, city_code, loc)
    VALUES (3, 
    '5579 riverview dr', 
    96, 
    sde.st_geometry (-0.00048, -0.00009, null, null, 4326)
    );
    

    PostgreSQL

    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (1, 
    '1420 kirchestrasse', 43, 
    sde.st_point (0.00003, 0.00051, null, null, 4326) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (2, 
    '638 villa arbol', 10, 
    sde.st_point (0.00020, -0.00029, null, null, 4326) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (3, 
    '5579 riverview dr', 96, 
    sde.st_point (-0.00048, -0.00009, null, null, 4326)
    );
    

    Db2

    INSERT INTO OUTBREAKS (OID, address, city_code, loc) VALUES (1, 
    '1420 kirchestrasse', 43, 
    st_point (0.00003, 0.00051, null, null, 0) );
    INSERT INTO OUTBREAKS (OID, address, city_code, loc) VALUES (2, 
    '638 villa arbol', 10, 
    st_point (0.00020, -0.00029, null, null, 0) );
    INSERT INTO OUTBREAKS (OID, address, city_code, loc) VALUES (3, 
    '5579 riverview dr', 96, 
    st_point (-0.00048, -0.00009, null, null, 0)
    );
    

    Informix

    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (1, 
    '1420 kirchestrasse', 43, 
    st_point (0.00003, 0.00051, null, null, 0) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (2, 
    '638 villa arbol', 10, 
    st_point (0.00020, -0.00029, null, null, 0) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (3, 
    '5579 riverview dr', 96, 
    st_point (-0.00048, -0.00009, null, null, 0)
    );
    

Inscrire les tables dans la géodatabase

Vous pouvez inscrire une table auprès de la géodatabase dans ArcGIS Desktop.

La procédure suivante décrit l'inscription auprès de la géodatabase dans ArcGIS Desktop :

  1. Ouvrez l'outil Inscrire dans une géodatabase.

    Vous pouvez rechercher l'outil ou l'ouvrir dans le jeu d'outils Administration de géodatabase de la boîte à outils Gestion des données. Dans l'arborescence du Catalogue d'ArcMap, vous pouvez également cliquer avec le bouton droit sur la table ou vue sous la connexion à une base de données et sélectionner Inscrire dans une géodatabase.

  2. Démarrez un client ArcGIS Desktop et connectez-vous à la géodatabase d'entreprise qui contient la table ou la vue à inscrire.

    Connectez-vous en tant que propriétaire de la table ou vue, car seul le propriétaire peut l'inscrire auprès de la géodatabase.

  3. Cliquez avec le bouton droit sur la table patients, puis cliquez sur Inscrire dans la géodatabase.
  4. Le champ PID a été défini comme une colonne de nombres entiers non nuls, il est donc utilisé en tant qu'ObjectID pour votre table inscrite.
  5. Cliquez avec le bouton droit sur la table outbreaks, puis cliquez sur Inscrire dans la géodatabase.
  6. Une référence spatiale a été définie pour les champs vous avez insérés et un seul type d'entité a été inséré (points), ArcGIS détecte donc ceci lors de l'inscription et utilise ces informations pour définir la classe d'entités. Le champ OID, qui a été défini comme une colonne de nombres entiers non nuls, est utilisé en tant qu'ObjectID pour votre classe d'entités inscrite.

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2019 Esri. | Confidentialité | Légal