Migration de colonnes LONG RAW dans Oracle à l'aide de commandes ArcSDE
Vous pouvez effectuer la migration des colonnes attributaires non spatiales LONG RAW vers le type BLOB à l'aide de la commande sdetable avec l'opération migrate. Cette opération modifie le stockage de la colonne attributaire de LONG RAW en BLOB en spécifiant un mot-clé de configuration DBTUNE ayant le paramètre ATTRIBUTE_BINARY défini sur BLOB.
![Astuce Astuce](rsrc/tip.png)
Vous pouvez aussi utiliser la commande sdetable pour migrer simultanément toutes les colonnes LONG RAW d'une table. Par exemple, si vous disposez d'une classe d'entités utilisant le stockage de données raster et de géométries LONG RAW et contenant une colonne attributaire binaire de type LONG RAW, lorsque vous utilisez la commande sdetable ces trois colonnes sont converties à partir des paramètres définis dans le mot-clé de configuration spécifié avec l'option –k. Tant que le mot-clé de configuration spécifié contient un paramètre ATTRIBUTE_BINARY défini sur BLOB, un paramètre GEOMETRY_STORAGE défini sur SDELOB ou ST_GEOMETRY et un paramètre RASTER_STORAGE défini sur BLOB ou ST_RASTER, tous les types de données des colonnes sont convertis.
La syntaxe pour la commande sdetable –o migrate est la suivante :
sdetable –o migrate –t <table> –k <config_keyword> [–i {<service> | <direct_connection>}] [–s <server>] –u <user_name> [–p <user_password>] [–N] [–q]
Utilisez les options comme suit :
Options |
Description |
---|---|
–o |
Cette option indique l'opération qui est effectuée ; dans ce cas, migrate. |
–t |
Utilisez cette option pour spécifier le nom de la table contenant la colonne (ou les colonnes) à migrer. |
–k |
Cette option désigne le mot-clé de configuration DBTUNE pour le type de stockage de géométries vers lequel vous effectuez la migration de la classe d'entités. Le mot-clé doit contenir un jeu de paramètres GEOMETRY_STORAGE défini sur SDELOB ou ST_GEOMETRY dans les bases de données Oracle ou GEOMETRY ou GEOGRAPHY dans les bases de données SQL Server. |
–i |
Utilisez cette option pour fournir la syntaxe de connexion directe, le numéro de port ou le nom du service ArcSDE que vous utilisez pour vous connecter à la géodatabase. Reportez-vous à la rubrique Connexions directes à partir de commandes ArcSDE à une géodatabase dans Oracle ou Connexions directes à partir de commandes ArcSDE à une géodatabase dans SQL Server pour connaître la syntaxe de connexion directe. |
–s |
Utilisez cette option pour spécifier le nom du serveur sur lequel réside la base de données. |
–u |
Utilisez cette option pour spécifier le nom du propriétaire de la classe d'entités devant se connecter à la base de données. |
–p |
Utilisez cette option pour spécifier le mot de passe de l'utilisateur. |
–N |
Spécifiez cette option si vous souhaitez supprimer l'invite pour confirmer l'opération. |
–q |
Spécifiez cette option si vous souhaitez supprimer tous les titres et avertissements. |
Vous recevrez un message d'erreur lorsque vous exécutez la commande sdelayer avec l'opération migrate si l'une des conditions suivantes est vérifiée :
- Les données sont stockées en précision de base.
- L'utilisateur spécifié avec l'option –u n'est pas le propriétaire de la table.
- Le type de stockage existant de la classe d'entités est identique au mot-clé DBTUNE spécifié (En d'autres termes, la table utilise déjà le type de stockage que vous avez spécifié avec le mot-clé ; par conséquent, aucune migration n'est nécessaire.)
- La table métier ne contient pas de champ d'identifiant d'objet.
- Vous essayez d'utiliser l'opération migrate dans une géodatabase ArcSDE antérieure à la version 9.2.
- Vous essayez d'utiliser l'opération migrate dans un SGBD autre qu'Oracle ou SQL Server.
- Vous essayez d'effectuer la migration d'une classe d'entités SDO_Geometry qui contient des entités 3D. Etant donné qu'Oracle Spatial ne prend pas en charge la génération de valeurs WKB ou de texte connu à partir d'une géométrie spatiale Oracle 3D, la migration de ces données ne peut pas être effectuée à l'aide de la commande sdelayer.
-
Créez une sauvegarde des données à migrer.
En créant une copie de sauvegarde des données que vous migrez, vous disposerez toujours des données d'origine en cas d'échec de la migration.
- Ouvrez une invite de commande DOS (Windows) ou shell (UNIX ou Linux).
-
Exécutez la commande sdetable avec l'opération migrate. Par exemple :
sdetable –o migrate –t owners –k DEFAULTS –i 68910 –s mainserver –u bjar –p mine.all.mine
Veillez à spécifier un mot-clé de configuration qui contienne la valeur ATTRIBUTE_BINARY dans laquelle vous souhaitez convertir les données.