Ogni riga in una tabella di database deve essere identificabile in modo univoco per essere utilizzata in Insights Viene utilizzata la seguente logica nella determinazione delle colonne da utilizzare per identificare l'unicità:
- Cercare una chiave primaria. Se ne viene trovata una, utilizzare le colonne che definiscono la chiave primaria.
- Cercare un indice contrassegnato come univoco. Se ne viene trovato uno, utilizzare le colonne che definiscono l'indice.
Suggerimento:
Potrebbero verificarsi risultati imprevisti se viene utilizzato un indice univoco e i valori null vengono inclusi nelle colonne selezionate. È una procedura consigliata definire una chiave primaria per tutte le tabelle. Se non è possibile definire una chiave primaria, le colonne che partecipano a un indice univoco dovrebbero essere contrassegnate nel database come not null.
Se i suddetti criteri non vengono rispettati, quando si seleziona la tabella da aggiungere ad una cartella di lavoro apparirà un'icona di avviso, e dovrà essere applicato un identificatore univoco. Un identificatore univoco è un campo o una combinazione di campi che identificano in modo univoco ogni riga nei dati. Qualora venga usato un solo campo, tale campo dovrà contenere solo valori univoci e non potrà contenere valori null. Qualora vengano utilizzati campi multipli, i campi individuali non richiederanno solo valori univoci, ma la combinazione delle righe dovrà sempre essere univoca.
Le selezioni dell'identificatore unico sono salvate e le impostazioni sono applicate automaticamente ogni volta che la tabella viene ri-aggiunta. Per Insights in ArcGIS Enterprise, le informazioni dell'identificatore unico sono salvate nel browser finché ArcGIS Server non viene riavviato o la cache del browser non scade. Per Insights desktop, l'identificatore unico è salvato per la durata della sessione e scade quando Insights desktop è chiuso.
Un identificatore univoco può essere creato utilizzando stringhe o colonne intere. Non è possibile scegliere come identificatore univoco la data, il float e le doppie colonne.
Esempi
La tabella che segue contiene dati di vendita di una catena di vendita al dettaglio. La tabella include un numero negozio, lo stato in cui si trova il negozio e l'importo delle vendite totali. Due dei campi, Numero negozio e Vendite totali, contengono tutti valori univoci e nessun null. L'altro campo, Stato, non contiene valori univoci. In questo caso, il campo Numero negozio deve essere utilizzato come identificatore univoco, in quanto ogni negozio è elencato solo una volta ed è noto che il Numero negozio sarà sempre univoco per ogni negozio.
Numero negozio | Stato | Vendite totali |
---|---|---|
1001 | Colorado | 1.583.296,29 |
1002 | Colorado | 1.938.495,84 |
1003 | Wyoming | 1.439.752,57 |
1004 | Montana | 2.583.485,83 |
1005 | Montana | 928.573,67 |
Qualora un singolo campo non soddisfi i requisiti per un identificatore univoco, o se non si ha la sicurezza che i valori nel campo rimarranno sempre univoci, è possibile combinare più campi per creare voci univoche. La tabella seguente include il numero di articoli in magazzino in ogni negozio. Contrariamente dall'esempio precedente, il campo Numero negozio non è univoco, in quanto ci sono diversi articoli in magazzino per negozio. Anche il campo ID articolo non è univoco. Il campo Quantità è attualmente univoco, ma il numero di articoli in magazzino in un negozio è destinato a cambiare, e non sarà sempre univoco. Quindi quel campo non dovrà essere utilizzato come un identificatore. Un identificatore migliore sarebbe una combinazione dei campi Numero negozio e ID articolo, poiché ogni articolo viene elencato una sola volta per negozio.
Numero negozio | ID elemento | Quantità |
---|---|---|
1001 | 123456 | 20 |
1001 | 234567 | 5 |
1001 | 345678 | 16 |
1002 | 123456 | 11 |
1002 | 234567 | 0 |
1002 | 345678 | 21 |
Scegliere un identificatore univoco
Completare i passaggi che seguono per applicare un identificatore univoco dalla tabella del database:
- Fare clic sull'icona di avviso
Apparirà la finestra Scegliere un identificatore univoco La finestra mostra i campi non spaziali nella tabella del database che non con contiene valori null, né il tipo di campo.
- Effettuare una delle seguenti operazioni:
- Se sai quale colonna o combinazione di colonne è meglio per creare un identificatore unico, seleziona i campi.
- Se non si sa quale colonna o combinazione di colonne è meglio per creare un identificatore unico, clicca sul pulsante Analizza per scansionare la tabella per le colonne che contengono tutti i valori unici. Le colonne che contengono valori unici sono indicate con la seguente icona:
- Qualora la tabella non abbia colonne che possano essere utilizzate come un identificatore univoco, o se non si desidera creare un identificatore univoco dai campi esistenti, è possibile scegliere Copia la tabella del database e crea una chiave primaria, oppure Crea una chiave primaria in un workbook dati.
- Fare clic su Applica.
Creare una chiave primaria
Alcune tabelle del database non includono colonne che possono essere utilizzate come un identificatore univoco. Pertanto, dovrà essere creata una chiave primaria prima che la tabella possa essere utilizzata in Insights.
Le chiavi primarie sono create usando Copia la tabella del database e crea una chiave primaria (workbook Insights) o Crea una chiave primaria (workbook dati).
Le chiavi primarie nei workbook Insights
Insights non modifica i dati nelle tabelle del database, inclusa l'aggiunta di una colonna di chiave primaria. Prima che venga applicata la chiave primaria, viene creata una copia della tabella del database. La posizione della tabella del database copiato dipende dalle autorizzazioni per la connessione al database. Per connessioni in lettura/scrittura, la tabella copiata viene conservata nel database. Per connessioni in sola lettura, la tabella viene copiata e conservata nella cartella di lavoro Insights. I dataset copiati in una cartella di lavoro avranno la stessa funzionalità dei feature layer hosted o dei file caricati.
Le chiavi primarie nei workbook dati
Nota:
Ingegneria dei Dati disponibile in Insights desktop. Tutti Insights in ArcGIS Online e Insights in ArcGIS Enterprise utenti hanno accesso a Insights desktop. Per ulteriori informazioni, vedere Panoramica di ArcGIS Insights.
L'ingegneria dati è al momento in anteprima.
Sono necessari identificatori univoci per le tabelle del database nei workbook dati. Dal momento che viene creato un nuovo dataset quando viene eseguito un modello dati, la tabella del database non necessita di essere copiata prima di aggiungere una chiave primaria. La nuova colonna dell'identificatore univoco (denominata id) è visibile nelle vista tabella e sarà inclusa nel dataset di output quando il modello dati viene eseguito.