Accesso 2010 con tavole SQL collegate
-
14-11-2019 - |
Domanda
Ho una vista di forma divisa con i dati provenienti da SQL Server collegati (2008).
Come vado ad aggiornare il record?
Attualmente, non mi permetterà di cambiare nulla nelle caselle di testo che presumo che questo sia perché i dati provengono da tabelle collegate ?!
Per aggiornare, devo creare oggetti comandi e coonn e programmarlo nel solito modo VB?
E se sì, qual è la sintassi per fare riferimento alle tabelle collegate durante la creazione della query di aggiornamento?
Sul mio modulo diviso ho lasciato cadere un pulsante lì e posso vedere le opzioni per farne eseguire macro, eseguire il codice, ecc. Ecc, quale è adatto?
Molte grazie,
ks
Soluzione
Prima assicurarsi che la tabella non sia stata collegata solo lettura.
Quando si collega a una tabella remota, l'accesso lo farà leggere, solo se non è in grado di identificare una chiave primaria o un'altra combinazione di campi per identificare in modo univoco ogni riga.A volte, ma non sempre, potrebbe chiederti di dirlo quale campo (s) utilizzare come chiave principale se è incerta.
Ma questo problema è semplice da controllare.Aprire la tabella collegata direttamente nella visualizzazione della scheda tecnica e vedere se è possibile modificare eventuali valori.In caso contrario, riorganizza la tabella e cercare un'opzione per informare l'accesso alla chiave primaria.
Se il collegamento non è di sola lettura, assicurarsi che il modulo Consenti la proprietà di Consenti Modits sia impostato come sì.
Inoltre è possibile provare una forma semplice piuttosto che una forma divisa per determinare se qualcosa sul modulo diviso sta causando il problema.
Altri suggerimenti
Soluzione:
MS Access BARFS Quando si tenta di registrare le tabelle con una chiave primaria di tipo Bigint che è 8 byte, l'accesso può gestire solo gli interni di 4 byte.La soluzione alternativa è sotto:
- .
- Drop il vincolo (Bigint PK) in SQL Table
- Crea una nuova chiave primaria (int) con Identity Seed
- Collega la tabella in MS Access
- Drop Nuovo vincolo (int PK) e riaggiunta il tuo vincolo precedente (Bigint PK) in Ms SQL
voilà!