|
Consigli Access Services 2010 e Access Services 2013 verranno rimossi dalla prossima versione di SharePoint. È consigliabile non creare nuove app Web ed eseguire la migrazione delle app esistenti su una piattaforma alternativa, come Microsoft Power Apps. È possibile condividere i dati di Access con Dataverse, un database nel cloud su cui è possibile creare applicazioni Power Platform, automatizzare i flussi di lavoro, agenti virtuali e altro ancora per il Web, il telefono o il tablet. Per altre informazioni, vedere Guida introduttiva: eseguire la migrazione dei dati di Access a Dataverse. |
|---|
Quando si usa una query per fornire dati per una visualizzazione in un'app Web di Access, alcuni campi che si potrebbe prevedere possano essere modificati sono di sola lettura nella visualizzazione. In particolare, se si usano più tabelle ed è presente almeno un join, esistono restrizioni relative ai campi di query che possono essere aggiornati.
Nota
Questo argomento riguarda le app Web di Access. Non si applica ai database desktop. Se si verificano problemi con una query in un database desktop, vedere l'articolo Introduzione alle query per una panoramica.
Requisiti per i campi di query aggiornabili
- Solo i campi della tabella in cui il campo unito non include valori univoci, ovvero la tabella "molti-molti", possono essere aggiornati.
- L'output della query deve includere i campi di chiave primaria per la tabella Molti-Molti.
- La tabella most-many deve trovarsi sul lato interno di qualsiasi outer join (ad esempio, il lato sinistro di un left outer join o il lato destro di un right outer join).
In questa query la tabella Attività è la tabella con il numero più elevato perché cerca i dati nella tabella Progetti.
Tuttavia, poiché la chiave primaria per Tasks non è inclusa nell'output, nessuno dei relativi campi sarà aggiornabile.
Anche se si aggiunge la chiave, nessuno dei campi della tabella Projects è aggiornabile, in quanto non si tratta della tabella con il maggior numero di numeri.
Inizio pagina
Trovare e risolvere un problema relativo ai campi aggiornabili
Il motivo per cui il campo non è aggiornabile determina come abilitare gli aggiornamenti. Per individuarlo, aprire la query in visualizzazione Struttura ed esaminare i relativi dettagli.
Se si inizia da un browser, aprire l'app Web in Access: nell'angolo in alto a destra dell'app fare clic su Impostazioni>Personalizza in Access.
In Access, se il riquadro di spostamento non è aperto, premere F11 per visualizzarlo. Quindi, nel riquadro di spostamento fare clic con il pulsante destro del mouse sulla query e quindi scegliere Visualizzazione Struttura.
Determinare quale tabella della query è la tabella più-molti. Per buona regola la tabella molti-molti è quella che cerca i dati in un'altra tabella.
Verificare che il campo che si vuole aggiornare si trovi nella tabella molti-molti. In caso contrario, non c'è niente da fare sulla query per risolvere il problema. In alternativa, per consentire agli utenti di modificare il campo, è consigliabile creare una nuova visualizzazione aggiornabile basata solo sulla tabella e quindi semplificare l'apertura di tale visualizzazione quando necessario. Ad esempio, è possibile fornire un pulsante con una macro che apre la visualizzazione.
Verificare che la chiave primaria per la tabella molti-molti sia inclusa nell'output della query. Se non è presente, aggiungere la chiave primaria all'output della query.
Fare doppio clic su ogni join e verificare che:
- L'unione è un'unione interna; oppure,
- Se si tratta di un outer join, la tabella most-many si trova sul lato interno del join, sul lato sinistro di un join sinistro o sul lato destro di un join right.
Se un join non soddisfa almeno uno dei due criteri precedenti, modificarlo per rendere aggiornabile la query.
Aggiungere la chiave primaria molti-molti all'output della query
- Aprire la query in visualizzazione Struttura.
- Identificare la tabella molti-molti.
- Fare doppio clic su ogni campo della chiave primaria. Ogni campo chiave è contrassegnato da una piccola chiave.
- Nella griglia di struttura della query verificare che la casella Mostra sia selezionata per i campi chiave appena aggiunti:
Inizio pagina
Modificare un join per rendere aggiornabile una query
Se un join non soddisfa uno dei criteri precedenti, impedirà gli aggiornamenti. Ecco un esempio di join non aggiornabile:
Si tratta di un left outer join che include tutti gli elementi della tabella di sinistra e i record corrispondenti della tabella di destra. Tuttavia, la tabella most-many si trova sul lato destro del join, impedendo così gli aggiornamenti.
Modi per rendere aggiornabile un outer join
Esistono tre modi di base per regolare un join in modo che la relativa query sia aggiornabile. Fare doppio clic sul join per aprire la finestra di dialogo Proprietà join e quindi eseguire una delle operazioni seguenti:
- Modificare il outer join in inner join Fare clic sull'opzione 1 nella finestra di dialogo Proprietà join (Join Properties ).
- Invertire le posizioni delle tabelle Spostare la tabella moltissimi sul lato interno del join e l'altra tabella sul lato esterno. Per impostare i nomi delle tabelle Left e Right, usare le caselle combinate nella finestra di dialogo Proprietà join per impostare i nomi delle tabelle Left e Right.
- Cambiare la direzione del join Fare clic sull'opzione 2 o 3 nella finestra di dialogo Proprietà join (modificarla con il valore che non lo era).
Inizio pagina