SQLite et ArcGIS
Vous pouvez connecter ArcGIS à une base de données SQLite pour créer des cartes et effectuer une analyse spatiale sur vos données.
Vous pouvez vous connecter directement à la base de données SQLite à partir de votre client ArcGIS. Reportez-vous à la rubrique Connexion à SQLite pour plus d'informations.
Vous devez installer le type ST_Geometry ou SpatiaLite d'Esri dans votre base de données SQLite pour y stocker les données spatiales. Vous devez utiliser l'un ou l'autre ; vous ne pouvez pas utiliser les deux dans la même base de données SQLite. Vous pouvez utiliser la fonction ArcPy CreateSQLiteDatabase pour créer une base de données SQLite avec l'un de ces types de données spatiales.
Données SQLite dans ArcGIS
Accéder aux données
L'accès à une base de données SQLite est contrôlé en surveillant les autorisations sur le dossier dans lequel la base de données SQLite est stockée. Contrairement à d'autres bases de données, vous ne créez pas d'utilisateurs authentifiés par la base de données et vous n'octroyez pas à d'autres utilisateurs de privilèges sur des jeux de données spécifiques.
SQLite peut être lu par plusieurs utilisateurs, mais vous ne devez pas mettre à jour la base de données pendant qu'un autre utilisateur effectue des modifications. Par exemple, n'ajoutez pas de données à une table existante ou ne créez pas de table dans la base de données pendant qu'un autre utilisateur ajoute des données à une table existante ou crée une table dans la base de données.
Types de données
SQLite est également différent des autres bases de données en ce sens qu'aucun type de données précis n'est attribué aux champs et que les définitions des types de données ne sont pas strictement appliquées. En revanche, SQLite utilise des classes de stockage dans lesquelles les valeurs de différents types de données peuvent être stockées.
ArcGIS ne peut toutefois utiliser qu'un seul type de données par champ et applique strictement les types de données. Il est important que vous soyez conscient de cette différence d'application des types de données lorsque vous visualisez des données SQLite dans ArcGIS.
L'exemple suivant crée une table avec des champs de type texte (TEXT) et entier (INTEGER) :
CREATE TABLE mytable (
id INTEGER PRIMARY KEY NOT NULL,
item TEXT,
weight INTEGER,
store TEXT;
Même si le champ correspondant au poids (weight) est défini comme un entier, SQLite vous permet de stocker des nombres décimaux à l'intérieur. Vous pouvez même y stocker du texte. Par exemple, vous pouvez insérer les enregistrements suivants :
INSERT INTO mytable (id, item, weight, store) VALUES(
1,
“magnetic dual elliptical trainer with seat”,
75,
“CardioPlus Equipment”
);
INSERT INTO mytable (id, item, weight, store) VALUES(
2,
“superfit treadmill4000”,
81.2,
“Sports Pit”
);
INSERT INTO mytable (id, item, weight, store) VALUES(
3,
“serenity yoga mat”,
.4588,
“Aerobic Angels Sporting Goods”
);
INSERT INTO mytable (id, item, weight, store) VALUES(
4,
“swim fins”,
"two",
“The Plunge”
);
Toutefois, les valeurs apparaîtront comme suit dans ArcGIS, car le champ weight est défini comme un entier :
id | item (article) | weight (poids) | store (magasin) |
---|---|---|---|
1 | magnetic dual elliptical trainer with seat | 75 | CardioPlus Equipment |
2 | superfit treadmill4000 | 81 | Sports Pit |
3 | serenity yoga mat | 0 | Aerobic Angels Sporting Goods |
4 | swim fins | 0 | The Plunge |
Reportez-vous à la rubrique Types de données SGBD pris en charge dans ArcGIS pour savoir quels types de données SQLite sont appariés avec quels types de données ArcGIS.