Processing math: 100%

3 votos

Dominios de valores codificados, Permitir valores nulos = no. ¿Por qué se pone por defecto a cero?

Tratando de utilizar dominios de valores codificados con Permitir valores nulos = No en un archivo GDB, ArcGIS 10.2. A través de una pregunta GIS.SE que parece que no puedo encontrar de nuevo, encontré esto a través de la ayuda de ArcGIS:

" Nota: El modelo de la geodatabase es tal que insertará un valor vacío (numérico = 0, texto = "") en lugar de un NULL de la base de datos si, y sólo si, el campo de la base de datos tiene una restricción NOT NULL".

Entiendo que esto evita que se introduzcan valores nulos. Pero por defecto, los valores están en blanco o en ceros, que anula mis dominios cuando se crea una nueva función ¡! Así que alguien puede añadir una característica y aceptar 0 en un campo que tiene un dominio de valor codificado, lo que hasta cierto punto anula el propósito de tener el dominio de valor codificado para forzar ciertos valores.

Lo que me gustaría es obligar a alguien a seleccionar un valor antes de que permita guardar la función. Pensé que este era el punto de un dominio?

¿Me he perdido algo o no he entendido algo sobre las bases de datos? ¿Es sólo una limitación, o estoy intentando que haga algo que intrínsecamente no debería hacer?

5voto

John Kramlich Puntos 286

El comportamiento que describes es correcto. El hecho de dar a un campo un dominio y configurar el campo para no permitir NULLS no significa que ArcMap capturará el hecho de que el usuario no puede tocar ese campo durante la edición. Así que cuando se guardan las ediciones pueden insertar un nada a pesar de que tiene un dominio.

Hay dos rutas aquí:

  1. Acepte este comportamiento de impar y luego haga una validación posterior a la edición a través del botón Validar Características en la barra de herramientas del Editor.
  2. Añada a su lista de dominios un valor "Desconocido", por ejemplo el código UNK, y establezca ese valor por defecto para el campo. Así, un usuario puede crear una función y no tocar ese campo, pero tiene un valor de dominio válido (en este caso UNK). Sería usted o ellos quienes buscaran los valores UNK y los resolvieran.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X