03. februar 2004 - 11:19Der er
13 kommentarer og 1 løsning
Skifte linked tables fra Access til SQL Server
Frontend'en er lavet i Microsoft Access og p.t. linket til tabeller i en anden Access database. Jeg har en ældre version af frontend'en som er linket til tilsvarende tabeller i en SQL Server database. Rent datastrukturmæssigt har jeg ikke foretaget nogen ændringer, det er kun VBA koden, et par rapporter samt nogle formularer der er ændret. Når jeg nu "dropper" de linked tables i den nye frontend og forsøger at linke op til tabellerne i SQL Serveren, får jeg besked om at "vælge datakilde" når jeg forsøger at starte hovedformularen! Jeg kan godt linke en enkelt tabel op og beholde de andre fra Access, men på et eller anden tidspunkt går det galt. Ja, KUNNE selvfølgelig forsøge at linke dem op 1-by-1, men med 35 tabeller.....! :(
Hvordan linker du til SQL serveren? Normal ville jeg slette alle Access-sammenkædningerne og derefter vælge Sammenkæd tabeller->ODBC-datakilder. Her markere jeg alle tabeller og sammenkæder (og skal efterfølgende ind og fjerne "DBO_" foran alle tabelnavne)
Pubbetmaster> Følg Thomas' løsning ovenfor, den kan bruges på samtlige tabeller på en gang - men vælg en FILE DSN fremfor en SYSTEM eller USER. Fidusen er, at en FILE DSN embeddes i linkinformationen så du ikke skal oprette nogen ODBC forbindelser på klienterne.
Damn, for jeg forstår problemet, men kan ikke finde løsningen! :(
I Access frontend'en har jeg slettet alle linked tables, linket op til SQL Server tabellerne vha en FILE DSN og renamed alle tabellerne. Når jeg så vælger hovedformularen, går det i kage. Det er som om der er et problem med DSN'en. Der er hul nok igennem til SQL Serveren, det kan jeg jo se i den gamle frontend.
nå, når jeg så i "Vælg datakilde" dialogboksen, får jeg en fejlmeddelelse: Det lykkedes ikke at oprette forbindelsen: SQLState: "08004" SQL Server-fejl: 4060
Og når jeg så klikker Ok og så får dialogboksen SQL Server Login, vil den ikke acceptere min (pålidelige) forbindelse! (og jeg er DBA samt owner af den pågældende database!)
Det lyder som du ikke har fået markeret for "integrated login" i din forbindelse før du oprettede den. Hvis du får en loginboks er eneste mulighed at indtaste en SQL Server authenticated login.
Tabellen der laver #¤" i databasen, indeholder 3 felter i den ene backend og 4 felter i den anden. Ydermere er det IKKE det SAMME felt der er primærnøgle i begge!!! :(
(tror sgu en af de andre udviklere har ændret tabellen i SQL Server databasen, for alt var i fineste orden for 3-4 uger siden) Nå, så var det alligevel ikke så svært at finde en løsning.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.