Avatar billede Kim Neesgaard Seniormester
06. oktober 2010 - 16:32 Der er 19 kommentarer og
1 løsning

Kopi af en SQL Server tabel til en lokal .mdf database

Jeg har et Visual Studio 2008 miljø med en lokal .mdf i App_Data og det fungerer fint. Jeg har så en tilsvarende database til at ligge på en test SQL Server og en drift SQL Server og så styrer jeg i web.config, hvilken database der skal forbindes til og det fungere også.

Nogle gange får jeg dog behov for at have nogle 'rigtige' data i min lokale .mdf fil og selv om jeg har søgt, har jeg ikke fundet en måde at kopiere en tabel fra enten test eller drift til min lokale .mdf - er der en, der kan hjælpe? Jeg har også MS SQL Server Import and Export Wizard til rådighed, men har heller ikke kunnet få den til det.
Avatar billede arne_v Ekspert
06. oktober 2010 - 16:43 #1
Jeg kan se to veje frem:

A) eksport og load

1) eksport data fra prod
2) load data i til test

B) MDF

1) kopier MDF fra prod til test
2) attache den
3) kopier data med SQL
Avatar billede Kim Neesgaard Seniormester
06. oktober 2010 - 17:43 #2
A) Den går fint med Wizard

Min .mdf ligger på min lokale pc og det jeg gerne vil er:

SQL Server test/table1 -> kopier data til .mdf/table1 eller

SQL Server prod/table1 -> kopier data til .mdf/table1
Avatar billede janus_007 Nybegynder
06. oktober 2010 - 17:47 #3
Hvor meget data har du?
Avatar billede Kim Neesgaard Seniormester
06. oktober 2010 - 17:53 #4
Det kan være alt fra ganske få records til 20000 eller flere.
Avatar billede janus_007 Nybegynder
07. oktober 2010 - 00:01 #5
Okay... det er mere end der nok lige kan scriptes som inserts :)

Der er flere måder at gøre, men hvad sker der siden import-wizarden ikke fungerer?
Avatar billede Kim Neesgaard Seniormester
07. oktober 2010 - 08:24 #6
Når jeg kommer til Choose a destination, vil wizard have et server name og database - det er her, at jeg ikke kan 'ramme' min mdf-fil. Wizard foreslår som standard for server name xx\SQLEXPRESS (xx er navnet på min lokale pc), men jeg synes ikke jeg kan bruge nogle af mulighederne under database?
Avatar billede Syska Mester
07. oktober 2010 - 08:40 #7
Er der ikke også et sted der du kan vælge "Provider" ?
Avatar billede Kim Neesgaard Seniormester
07. oktober 2010 - 09:45 #8
Der er de to nævnte og så en 'destination', der er en dropdown, der indeholder 'SQL Server Native Client 10.0', 'Microsoft OLE DB Provider', 'Access', 'Excel' mm., så det må være en anden betegnelse for provider.
Avatar billede Syska Mester
07. oktober 2010 - 10:23 #9
Præcis den ... der burde være mulighed for at vælge en som kan læse din fil ... og på den måde overføre data.
Avatar billede Kim Neesgaard Seniormester
07. oktober 2010 - 16:01 #10
Jeg kan finde en, der giver adgang til at pege på en fil, og den hedder .NET Framework Data Provider for SQL Server og her kan man indsætte stien til .mdf-filen under data source, men når man trykker Next, kommer den ud med denne fejl:

TITLE: SQL Server Import and Export Wizard
------------------------------

The operation could not be completed.

------------------------------
ADDITIONAL INFORMATION:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) (Microsoft SQL Server, Error: -1)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=-1&LinkId=20476

------------------------------
BUTTONS:

OK
------------------------------

Siger det dig noget?
Avatar billede janus_007 Nybegynder
07. oktober 2010 - 18:03 #11
Ja du skal bruge SQL Server Native Client 10.0', 'Microsoft OLE DB Provider'

herefter skal du vælge source, der peger du vha ip på din kilde-database.. noget ala xxx.xxx.xxx.xxx og måske instancename \someinstance

Så vælger du hvilke tabeller du vil have kopieret.

Så peger du på destination og peger igen som do. blot denne gang på den du vil have data flyttet til.

Du skal ikke bruge noget filhalløj, forbind direkte til db-serveren :)
Avatar billede Kim Neesgaard Seniormester
07. oktober 2010 - 19:07 #12
Sourcen virker helt fint - den er der ikke problemer med. Problemet er destination, som er en fysisk fil på c-drevet i Visual Studio i mappen App_Data. Om man kan pege på den på en anden måde, er jeg ikke klar over?
Avatar billede janus_007 Nybegynder
07. oktober 2010 - 19:22 #13
En fysisk fil? Mjaaa... altså .mdf eller datafilen for a være korrekt er jo en fil. Men den kører formentligt vha en db-server, om det enten er en express eller størrer betyder ikke noget - du skal nok bare lige finde den :)
Avatar billede Kim Neesgaard Seniormester
08. oktober 2010 - 09:24 #14
Hvis jeg bruger dette som server:

pc ID/SQLEXPRESS

og dette som database:

sti til .mdf-fil

så går den i fejl:

TITLE: SQL Server Import and Export Wizard
------------------------------

The operation could not be completed.

------------------------------
ADDITIONAL INFORMATION:

Login failed for user 'user'.
Cannot open database "C:\....x.mdf" requested by the login. The login failed. (Microsoft SQL Server Native Client 10.0)

------------------------------
BUTTONS:

OK
------------------------------

?
Avatar billede Syska Mester
08. oktober 2010 - 09:44 #15
har du en user der hedder "user" eller har du skiftet det ud som stod der ?

Hvem har adgang til filen, tror nemlig ikke at den import kører som current user, så det kan ske at den ikke har adgang.

mvh
Avatar billede Kim Neesgaard Seniormester
08. oktober 2010 - 10:20 #16
Jeg har udskiftet den.

Jeg har selv adgang til filen, som ligger på mit c-drev.
Avatar billede Syska Mester
08. oktober 2010 - 10:34 #17
Ja, men er det dit eget username der står der eller ?
Avatar billede Kim Neesgaard Seniormester
08. oktober 2010 - 15:50 #18
Ja - der er mit pc nummer og firmainitialer.
Avatar billede Syska Mester
09. oktober 2010 - 20:39 #19
hmmm, så er jeg tom for ideer.

mvh
Avatar billede Kim Neesgaard Seniormester
23. oktober 2010 - 12:35 #20
Lukker.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester