sql >> Database teknologi >  >> RDS >> Sqlserver

Komplet proces til at kopiere tabel fra en database til en anden (eksport-import) i SQL Server

Som DBA skal brugere til tider kopiere tabeller fra én database til en anden i en lignende instans eller i en alternativ SQL-instans, for eksempel ved at replikere eksplicitte tabeller fra en oprettelsesdatabase til en DEV til test- eller fejlfindingsformål.

SQL Server tilbyder et væld af teknikker, der kan bruges til at udspille tabellens data og skitsere kopieringsproceduren. For at opleve hver enkelt af disse teknikker, vil vi overveje den nedenstående situation:

Vigtig bemærkning: Hvis du står over for et problem med SQL-databasekorruption, og du ønsker at gendanne dine vigtige SQL Server-databaseobjekter, kan brugeren tage hjælp af SysTools SQL-databasegendannelsessoftware . Denne software fjerner korruptionsproblemer fra MDF- og NDF-filer og giver os også mulighed for at gendanne slettede databaseobjekter. Denne software understøtter Microsoft SQL Server 2019, 2017, 2016, 2014, 2012 og lavere versioner. For at vide mere kan brugeren prøve demoversionen af ​​softwaren herfra.

For at kopiere tabeller skal vi have adgang til eksplicitte databaser – kildeserveren og destinationsserveren. Her,

Kundskab til at kopiere tabel fra en database til en anden

Kildedatabase:TechForums19

Destinationsdatabase:TechForums20

1.)Kopiér tabeller ved hjælp af forespørgsel

Denne strategi gør brug af SELECT INDT forespørgsel.

Vælg * i TechForums20.userforum.user fra TechForums19.userforum.user 

Ovenstående forespørgsel kopierer kun tabelskemaet og dataene, og hvis du ønsker at kopiere objekter, indekser, triggere og begrænsninger på det tidspunkt, er det utænkeligt at gøre det med SQL-forespørgsler/kommandoer. Vi vil tale om senere i denne artikel, hvordan du kan kopiere databaseobjekterne.

2.) Brug af SQL Server Management Studio

Strategien for kopieringstabeller i SQL Server er guiden Eksport og import, som er tilgængelig i SQL Server Management Studio. I dette valg har klienten beslutningen om enten at importere fra destinationsdatabasen eller at eksportere fra kildedatabasen for at flytte/kopiere dataene.

Følg nedenstående trin for at kopiere tabel fra én database til en anden i SQL Server:

  • Kør SQL Server Management Studio (SSMS ).
  • Inde i Objektet Explorer , højreklik på TechForums19-databasen og gå derefter til Opgaver> vælg kommandoen Eksporter data .
  • I denne progression skal du bestemme serveren Navn , Godkendelse metode , og Kildedatabasenavnet , og klik på Næste .

  • I denne progression skal du angive destinationsdatabasenavnet og klik på Næste .

  • Vælg Kopiér data fra en eller flere tabeller eller visninger, og klik på Næste .

  • Her vil guiden Vælg kildetabeller og visninger komme på skærmen; vælg derefter de tabeller, du skal kopiere fra kildedatabasen til destinationsdatabasen, som vist nedenunder.

Bemærk:For at sikre, at den tabel, du har valgt, bliver oprettet på destinationsstedet. Klik derefter på indstillingen Rediger tilknytninger, og vælg indstillingen Opret destinationstabel.

Hvis tabeller har identitetskolonnen, skal du markere indstillingen Aktiver identitetsindsættelse og klikke på OK knap.

  • I kølvandet på at kontrollere alle tabellerne ved hjælp af Rediger Kortlægninger , klik på Næste i Vælg Kildetabeller og -visninger .
  • Gem og kør guiden vil åbne i denne progression, skal du klikke på Næste .

  • Klik på Udfør.

Bemærk :Sørg for at angive de korrekte navne på både kilde- og destinationsdatabaser for at flytte tabeller, der starter med én database og derefter til den næste.

Kopier tabeller SQL Server ved hjælp af SQL Server Management Studio er en hurtig metode til at afslutte aktiviteten, men den formår ikke at flytte/kopiere tabellens indekser og nøgler.

I tilfælde af at du skal kopiere tabellisterne og nøglerne, skal du desuden bruge strategien Generer scripts.

3) Brug af Generer scripts

Denne teknik giver dig mulighed for at kopiere tabeldiagrammet og oplysningerne samt genstande, registreringer, udløsere, begrænsninger, nøgler og så videre.

Oplev midlerne nedenfor til at skabe et indhold til fuldstændigt at kopiere tabeller begyndende med én database og derefter til den næste i SQL Server:

  1. Kør SQL Server .
  2. Højreklik på databasen navn og gå derefter til Opgaver> Generer Scripts .
  3. Script Wizard ville åbne, klik på Næste
  4. Vælg nu den database, du skal generere script til.
  5. Vælg Objekt typer .
  6. Vælg tabellerne at kopiere.
  7. Vælg Outputvalg for scriptet.
  8. Rediger databasenavnet med det navn, du skal bruge for at udføre scriptet.

På det tidspunkt, hvor du starter et projekt eller erhverv, der er relateret til SQL Server-databasen, er der en lille fare for datatab eller SQL Server-databasefilkorruption enten på grund af off-base eller forkert udførelse eller forfærdelig omgang med databasefilerne. Der er grundlæggende omstændigheder, der forårsager skuffelse, da det viser sig at være praktisk talt utænkeligt at få data tilbage fra den utilgængelige MDF/NDF-databasefil.

I situationer med korruption eller beskadigelse af SQL Server-databasefilen foreslår vi at bruge en MS SQL-gendannelse værktøj . Dette værktøj giver klienten fuld kontrol over databaseelementer og sætter ingen begrænsninger for filstørrelsen.

Desuden har vi gjort det godt med en bred vifte af Microsoft SQL Server-formularer fra SQL Server 2000 til 2019, så uanset hvilken variant af SQL Server du kører på dit framework.

Læs også: Sådan gendannes data fra SQL Server Transactional Logs.

Afslutning

Det er enkelt at flytte eller kopiere tabel fra en database til en anden, men nogle få teknikker er lange og meget forbløffende, og hvis noget går galt under proceduren, vil både data og databasefil være i høj fare for filkorruption . På denne måde, for at kæmpe med sådanne omstændigheder SQL Recovery værktøj, er ekspert-SQL-gendannelsesværktøjet tilgængeligt på internettet


  1. Sådan skriver du UTF-8-strenge korrekt i MySQL gennem JDBC-grænsefladen

  2. Afslut hængt forespørgsel (inaktiv i transaktion)

  3. Indsaml skemastatistik ved hjælp af FND_STATS i EBS 11i og R12

  4. Er ODP.NET påkrævet til Oracle 11g Client?