Se non si usa docmd.TransferDatabase ma il codice seguente la vista
collegata sarà in sola lettura (perchè non appare il form di richiesta
della PK).
Dim t As TableDef
Set t = DBEngine.Workspaces(0).Databases(0).CreateTableDef(NomeTabella)
t.SourceTableName = NomeTabella
t.Connect = "ODBC;DSN=" & DSN & ";UID=" & UserName & ";PWD=" & Password
t.attributes = dbAttachSavePWD
DBEngine.Workspaces(0).Databases(0).TableDefs.Append t
DBEngine.Workspaces(0).Databases(0).TableDefs.Refresh
Se fosse possibile dire ad access qual'è la primarykey via codice il
guaio sarebbe risolvibile...
Qualche idea?
Grazie.
Matteo Barsotti.
--
Matteo Barsotti
C.B.Sistemi
Tel. 041 976162
www.cbsistemi.it
Ciao Matteo,
puo sembrare strano ma il nome della colonna che funge da PK è una vera e
propria definizione di primary key nella tabella collegata.
Quindi in fondo al tuo codice metti
--------------
CurrentDb.Execute "ALTER TABLE " & Nometabella & _
" ADD CONSTRAINT __uniqueindex PRIMARY KEY (NomeCampo)"
--------------
Ciao Giorgio
Grande! Funziona.
In effetti è strano, ma a pensarci bene non così tanto... è il modo più
ovvio per dire ad Access quale campo chiave usare per creare le
istruzioni di modifica...
Grazie 1000
Ciao