Vraag Dump Microsoft SQL Server-database naar een SQL-script


Is er een manier om een ​​Microsoft SQL Server-database te exporteren naar een SQL-script?

Ik zoek iets dat zich op dezelfde manier gedraagt ​​als mysqldump, een databasenaam aanneemt en een enkel script produceert dat alle tabellen opnieuw creëert, opgeslagen procedures, alle gegevens opnieuw invoert, enz.

ik heb gezien http://vyaskn.tripod.com/code.htm#inserts, maar ik heb idealiter iets nodig om alles opnieuw te creëren (niet alleen de gegevens) die in een enkele stap werken om het uiteindelijke script te produceren.


116
2017-08-25 01:47


oorsprong


@Matt Ja, het exporteert de gegevens niet. Dat is waarom ik zei dat je het moest combineren met het script dat je voorstelde. Deze methode maakt echter een script in de juiste volgorde. - Julio César
In Mangement Studio 2008 moet u gewoon de optie "gegevens exporteren" inschakelen en het script bevat zowel schema- als invoeginstructies. - user24161
Verwant: Hoe gegevens exporteren als CSV-indeling van SQL Server met sqlcmd? - kenorb


antwoorden:


Klik in SQL Server Management Studio met de rechtermuisknop op uw database en selecteer Taken / Scripts genereren. Volg de wizard en u krijgt een script dat de gegevensstructuur in de juiste volgorde opnieuw maakt op basis van externe sleutels. In de wizardstap getiteld "Set Scripting Options" kiest u voor "Advanced" en wijzigt u de optie "Types of data to script" in "Schema and data"

TIP: selecteer in de laatste stap "Script naar een nieuw queryvenster", het zal op die manier veel sneller werken.


102
2017-08-25 01:59



Vergeet niet om naar geavanceerde opties te gaan en het te vertellen om niet alleen het schema, maar ook de gegevens te scripten. - RomanSt
@romkyns verdient alle up-stemmen! "Typen gegevens naar script" is de exacte optienaam. U wilt "Schema en gegevens" selecteren. - solidau
Het belangrijkste probleem met scripts die zijn gegenereerd vanuit SSMS, is dat ze niet correct zijn geordend om afhankelijkheden mee te laten tellen. Dit is geen probleem voor kleine databases waar u dit handmatig kunt doen, maar het is zeker een probleem wanneer de database meer dan 50 objecten krijgt. Tot nu toe hebben we met succes gebruikt ApexSQL Script voor deze. Het is een premium-tool, maar u kunt het in proefmodus gebruiken om de klus te klaren. I denk Red Gate heeft ook een soortgelijk hulpmiddel. - David Smithers


Proberen Sql Server Database Publishing Wizard. Mogelijk moet u het script opnieuw ordenen om het in één keer te laten draaien vanwege afhankelijkheden, maar het bevat uw schema en gegevens.

Als u niet beschikt over 2005 SQL XMO-objecten die zijn geïnstalleerd, krijgt u een foutmelding wanneer u wordt uitgevoerd de tovenaar. U wilt de Management Objects-collectie van Microsoft SQL Server 2005


34
2017-08-25 01:57



Eigenlijk hoeft u het script niet opnieuw in te delen, omdat het alle beperkingen wegneemt, het schema maakt, de gegevens invoegt en eindelijk de beperkingen opnieuw creëert. - Daniel Silveira
Geweldig, dat is behoorlijk netjes - Beep beep
Dit is een geweldige tool, maar alleen ondersteuning voor SQL Server 2015. Hoe zit het met 2008 en later? - Nam G VU


ik vond SQL Dumper best handig. Het is gratis, dus je kunt het proberen. Hiermee kunt u de databasetabellen en kolommen, weergaven en zelfs de resultaten van aangepaste query's kiezen als SQL-invoeginstructies.


11
2018-02-10 16:40



Laatste stabiele versie werkt niet met opgeslagen procedures. - VMAtm
Laatste versie kan worden gedownload van download.cnet.com/SQL-Dumper/3000-10254_4-10514574.html - Raynet


Omdat ik niet de juiste tool vond, besloot ik om mijn eigen tool te maken: een opdrachtregelprogramma voor sqlserverdump. Bekijk het eens http://sqlserverdump.codeplex.com/. Het maakt schema en gegevens opnieuw in één stap.


7
2017-09-22 06:50





Proberen DBSourceTools. Het is ontworpen om een ​​brondatabase uit te schrijven en opnieuw te implementeren in een doeldatabase. Het scripts schema en gegevens.


6
2018-03-08 03:50





De aanbevolen oplossing werkt alleen op sql 2000 en 2005. Als u dit op SQL 2008 wilt doen,

Je kunt het met SQL 2008 doen zonder andere plug-ins. Klik met de rechtermuisknop op de database en selecteer "Taken -> Scripts genereren ...". Selecteer de database en wat u wilt back-uppen. Klik op Volgende en stel de "Scriptgegevens" in op true.

Verdere documentatie op de link:

http://blog.sqlauthority.com/2011/05/07/sql-server-2008-2008-r2-create-script-to-copy-database-schema-and-all-the-objects-data-schema- opgeslagen-procedure-functies-triggers-tables-views-constraints-en-alle-andere database-objecten /


5
2018-05-29 22:58



meta.stackexchange.com/questions/8231/... - jscott


SQL Server Database Publishing Wizard lijkt inderdaad de beste manier om het te doen. Het probleem hiermee is dat het niet op Windows 7 lijkt te werken. Ik moest mijn oude computer gebruiken om het te gebruiken. Aan de positieve kant werkt het met oudere SQL Server-versies zoals 2000.

Voor nieuwere SQL-versies en besturingssystemen is deze software misschien de moeite waard om te bekijken: http://sqlbackupandftp.com/


2
2018-04-27 19:32





Ombelt is een mooie tool voor het exporteren van MS SQL-server-DB's. www.ombelt.com

heel erg zoals de dumpfaciliteiten van andere DB's.

Werkt voor mij.


0
2017-08-25 05:54





Controleer het Schema Dump-project van Microsoft SQL Server (mssql-schema-dump tool op GitHub).

Gebruik: mssqldump -h data-source-host -u username -p password [-d path/for/files] [-c] [-s] [-a] [-b DB1[,DB2[,DB3]]]

De export ondersteunt:

  • DB: Schema, gebruikerstypen, gebruikerstabeltypen, triggers, volledige tekstcatalogi, Volledige tekststoplijsten, Opgeslagen procedures, Functies
  • DB.Tables: Schema, Triggers, Indexen, DRI, Statistieken
  • DB.Views: Schema, Triggers, Indexen, DRI, Statistieken

0
2018-02-08 17:44