14. oktober 2003 - 14:57Der er
16 kommentarer og 2 løsninger
Flytte en db fra MS SQL til Access
Jeg skal flytte en MS SQL database til Access for at bygge den op kun i Access for en kunde. Den kører i dag med en Access frontend. Men skal fremover køre rent access da det af organisatoriske og licensmæssige årsager ikke er muligt at fortsætte med at have data her. Hvordan overføres data og strukturer nemmest? Findes der enten et værktøj i Access eller noget smart kode som kan skrive alle tabellerne til en ny backend access database.
Jeg er klar over at evt. stored procedures ikke kan komme med. Men er der flere ting der vil mangle?
Jeg har har fuld DB adgang til alle data via Access, men ikke mulighed for at benytte SQL server værktøjer som fx. enterprise manager.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Stored procedures og triggers vil ganske rigtig ikke komme med (selvom du rent faktisk kan lave Stored Procedures i Access)
Der er flere måder at flytte strukturen over i Access på. Men hvis du ikke har Enterprise Manager, tror jeg at det nemmeste er at importere (ikke sammenkæde) alle tabeller til en ny Access-db.
Der skal muligvis justeres lidt på enkelte datatyper, ligesom relationerne nok er røget sig en tur.
Men ellers skulle det herefter være muligt at sammenkæde til den ny backend.
Det svarer meget godt til min egen forventning. Jeg vil gerne bruge mindst mulig tid på det og der er rigitg mange 100 tabeller. Kan det gøres i ét hug via access wizards til en ny .mdb eller kan man evt køre noget vba kode som løber igennem tabellerne én efter én og laver en query der skriver tabellen til en .mdb
Thomas, jeg kan høre at du tror jeg ved mere end jeg rent faktisk gør. Når jeg står i database containeren i en tom mdb og vælger importer, hvor angiver jeg så at der er en SQL server jeg vil have fat i. Er det en odbc forbindelse?
Jeg er heller ikke klar over hvor jeg i den eksisterende database finder de parametre der er benyttet for at få adgang til sql serveren.
Det er rigtigt at du vælger ODBC-databaser og derefter skal du oprette en SQL server-datakilde. Det kræver at du har følgende oplysninger: -Servernavn (kan som regel ses på listen) -Brugernavn (typisk "sa") -adgangskode (kan være blank, men er det formentlig ikke)
Er din nuværende database en .mdb-fil eller en .adp-fil?
Det har Niels ret i. MSDE er gratis og kan indeholde op til 2 GByte data, men er optimeret til omkring 5 samtidige brugere (der kan dog godt være f.eks. 20 på)
Niels>> Forslaget med at anvende MSDE lyder også godt. Men jeg har brug for at kunne flytte selve databasen til andre computere senere. Kan det lade sig gøre? MSDE har ikke noget management interface så vidt jeg ved? Derfor var jeg mere tryg ved Access
If you make an Access data project (.adp) instead of .mdb then yuu can use Access as the "management interface". You can create all your views, stored procedures etc. almost as you can with EM in SQL Server.
You should also be able to copy the db to other PC's as these are just files, although they have to be detached first!
Jeg har nu kigget på det. Jeg er ikke nået så langt. Mit problem er fortsat at jeg ikke kan få forbindelse til SQL serveren fra en ny Access database. Der er ingen definerede dataforbindleser i XP som bliver jeg kan benytte. Når jeg prøver at oprette en ny ODBC forbindelse kommer der ingen servere frem i listen. Og hvis jeg kigger i den eksisterende Access database som kører fint mod SQL serveren kan jeg ikke finde nogen indikation af hvad der er anvendt som connect parametre. Hvis jeg sætter access et isoleret segment hvor den ikke kan nå serveren fra for jeg følgende meddelelse:
ODBC: Tilslutning til "SQL ServerLink" lykkedes ikke
Jeg har ikke kunne finde "SQL ServerLink" nogen steder heller ikke i VBA.
Har brug for lidt gode ideer til at komme videre, da jeg ikke har nogen oplysninger om MS SQL servicen andet end den der er i access programmet. Altså ingen brugerid og password. Så har brug for at kunne arve det der virker. Mvh bzone
Den eneste metode jeg ellers kan finde på lige nu er at trække hver tabel ud via en query og gemme i en access ny tabel. Men det er en langsommelig process.
OK! You can export the data FROM SQL Servere to an Access database using DTS (SQL Server) In Enterprise manager right click on the database where youwant to export from, and then from the menu choose All Tasks+Export Data. Then find the Access Data Source form the drop down list. Now follow the instructions to export your tables to the Acess datbase.
Terry>> I am aware that MS SQL has this capability. The problem is that I do not have access to the Server running MS SQL and its associated tools. So need to find a way to get the data through Access. Is there any place in Access that you find, enherit or reuse the ODBC connect string?
If you cant create an ODBC Data source to the SQL Server then being able to reuse the ODBC connection string in Access isnt going to help!
When you create an ODBC Data Source, if the server is NOT in the list then just enter it. If you enter the name correctly and it exists then you will create a connection!
Fik det ikke til at virke med import via en ny ODBC forbindelse og har i stedet overført data via den eksisterende ODBC forbindelse. Tak for indsatsen. /bzone
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.