Czy istnieje sposób, aby uzyskać skrypty wszystkich tabel, procesów i innych obiektów z bazy danych? Wiem, że istnieje opcja skryptu bazy danych, ale dostałem tylko jakiś rodzaj skryptu najwyższego poziomu, na pewno nie skrypt do tworzenia wszystkich tabel, procs, udfs, .etc.
sql
sql-server
sql-server-2008
PositiveGuy
źródło
źródło
Odpowiedzi:
Z Management Studio Kliknij prawym przyciskiem myszy swoją bazę danych. Zadania -> Generuj skrypty.
Że należy to zrobić.
źródło
Napisałem narzędzie wiersza poleceń open source o nazwie SchemaZen, które to robi. Jest znacznie szybszy niż pisanie skryptów ze studia zarządzania, a jego wyjście jest bardziej przyjazne dla kontroli wersji. Obsługuje skrypty zarówno schematu, jak i danych.
Aby wygenerować skrypty, uruchom:
Następnie, aby odtworzyć bazę danych ze skryptów, uruchom:
źródło
Napisałem narzędzie do tego zadania, SMOscript .
Generowanie skryptów jest wykonywane przez bibliotekę SMO i obsługuje nowe typy obiektów w SQL 2005 i 2008.
źródło
Skończyło się na tym, że użyliśmy kombinacji generowania skryptów SSMS do wyodrębnienia schematu i danych, a następnie skorzystaliśmy z naszego własnego narzędzia bazy danych, które umożliwia analizowanie słów kluczowych i zastępowanie tokenów w skryptach. Zapewnia również, że skrypty są stosowane tylko raz.
Czemu?
Przykładowy skrypt (zredagowany dla zwięzłości)
źródło
Polecam przyjrzenie się pakietowi RedGate SQL. To nie jest darmowe, ale było na tyle przydatne, że było warte swojej ceny.
źródło
Wystarczy spojrzeć na dane tabeli, aby wyświetlić całą zawartość danych tabeli w Management Studio 2012 i 2014, jest ona nieco ukryta, ale znalazłem opcję po pewnym przejrzeniu:
źródło
Jeśli potrzebujesz zrobić to programowo, możesz użyć biblioteki SQL DMO (OLE) w stosunku do SQL Server 2000, ale bardziej prawdopodobne jest, że będziesz chciał użyć biblioteki SQL SMO (natywne biblioteki .NET) przeciwko SQL Server 2005 i nowszym.
Obie te biblioteki są integralną częścią instalacji narzędzi administracyjnych programu SQL Server.
Dzieje się tak w przypadku, gdy wygenerowanie pełnego skryptu bazy danych z SQL Server Management Studio jest niewystarczające.
źródło