Preguntas frecuentes

¿Es posible eliminar una vista multiversionada sin dejar una entrada en el registro de tabla?

Last Published: May 3, 2021

Respuesta

Nota: El software de ArcSDE, incluido el servidor de aplicaciones, las herramientas de comando y el SDK con API de C y Java, quedó obsoleto en ArcGIS 10.2.2 y ya no se distribuye.

Sí. Para eliminar una vista multiversionada, utilice siempre sdetable -o delete_mv_view.

Para -t, especifique el nombre de la tabla o capa desde la que se crea la vista. Por ejemplo, utilice el mismo valor que utilizó en la opción -t para crear la vista multiversionada. Este procedimiento se muestra a continuación.

Código: C:>sdetable -o create_mv_view -T shale_vw -t shale -i esri_sde -u sde -p sde ArcSDE 9.1 Oracle10g Build 407 Mon Mar 5 10:50:46 PST 2007 Attribute Administration Utility ----------------------------------------------------- Successfully created MV view shale_vw for table shale. C:\>sdetable -o delete_mv_view -t shale -i esri_sde -u sde -p sde ArcSDE 9.1 Oracle10g Build 407 Mon Mar 5 10:50:46 PST 2007 Attribute Administration Utility ----------------------------------------------------- Delete MV view for table shale? ¿Desea realmente hacerlo? (Y/N): y Successfully deleted MV view for table shale.

Con el método anterior, se puede crear una vista multiversionada posteriormente sin problema, como se muestra a continuación.

Código: C:\>sdetable -o create_mv_view -T shale_vw -t shale -i esri_sde -u sde -p sde ArcSDE 9.1 Oracle10g Build 407 Mon Mar 5 10:50:46 PST 2007 Attribute Administration Utility ----------------------------------------------------- Successfully created MV view shale_vw for table shale.
Advertencia: Al utilizar sdetable -o delete -t <view_name> se dejan desasociadas las entradas que asocian la tabla o capa original con la vista multiversionada en el registro de tabla. Esto se debe corregir manualmente. Si no se corrige manualmente, se produce un error si se vuelve a crear una vista multiversionada. Por ejemplo:
Código: C:\>sdetable -o create_mv_view -T beach_vw -t beach -i esri_sde -u sde -p sde ArcSDE 9.1 Oracle10g Build 407 Mon Mar 5 10:50:46 PST 2007 Attribute Administration Utility ----------------------------------------------------- Successfully created MV view beach_vw for table beach. C:\>sdetable -o delete -t beach_vw -i esri_sde -u sde -p sde ArcSDE 9.1 Oracle10g Build 407 Mon Mar 5 10:50:46 PST 2007 Attribute Administration Utility ----------------------------------------------------- Delete table beach_vw! ¿Desea realmente hacerlo? (Y/N): y Successfully deleted table beach_vw. C:\>sdetable -o create_mv_view -T beach_vw -t beach -i esri_sde -u sde -p sde ArcSDE 9.1 Oracle10g Build 407 Mon Mar 5 10:50:46 PST 2007 Attribute Administration Utility ----------------------------------------------------- Error: DBMS view exists (-238). Error: Unable to create MV view beach_vw for table beach.

Cuando ocurra lo anterior, utilice SQL para limpiar la entrada en el registro de tabla como se indica a continuación.

Para Oracle, conéctese como el usuario SDE y ejecute esta declaración de actualización:

Código: UPDATE table_registry SET imv_view_name = NULL WHERE table_name = 'BEACH' AND owner = '<owner of BEACH>'

Para SQLServer, conéctese como usuario SDE u operativo de base de datos (DBO) si utiliza un esquema DBO y ejecute esta declaración de actualización:

Código: UPDATE sde_table_registry SET imv_view_name = NULL WHERE table_name = 'BEACH' AND owner = '<owner of BEACH>'
Nota: En la versión 9.2, ArcSDE limpia la entrada desasociada.

Id. de artículo:000009475

Obtener ayuda de expertos en ArcGIS

Contactar con soporte técnico

Descargar la aplicación de soporte de Esri

Ir a las opciones de descarga

Descubrir más sobre este tema