Как Вы перемещаете Схемы базы данных SQL Server в другую Базу данных?

Я предлагаю написать функцию Join, чтобы объединить уникальные части обратно в одну строку (имеется один доступный для массивов, но не для какой-либо другой коллекции):

Function Join(Iterable As Variant, Optional Delimiter As String = ",") As String
    Dim notFirst As Boolean
    Dim item As Variant
    For Each item In Iterable
        If notFirst Then
            Join = Join & Delimiter
        Else
            notFirst = True
        End If
        Join = Join & item
    Next
End Function

Затем используйте Split, чтобы разбить строку на массив и Scripting.Dictionary, чтобы обеспечить уникальность:

Function RemoveDuplicates(s As String, Optional delimiter As String = ",") As String
    Dim parts As String()
    parts = Split(s,delimiter)
    Dim dict As New Scripting.Dictionary
    Dim part As Variant
    For Each part In parts
        dict(part) = 1 'doesn't matter which value we're putting in here
    Next
    RemoveDuplicates = Join(dict.Keys, delimiter)
End Function
26
задан Rob Paterson 9 February 2009 в 07:44
поделиться

3 ответа

Ограбьте, существует таблица 'sysdiagrams', который содержит определения схемы. Попытайтесь составить таблицу и вставить данные из старой базы данных. Это должно работать.

HTH

13
ответ дан Valentin 15 October 2019 в 07:30
поделиться

Принятие Вас имеет доступ к обеим базам данных в экземпляре SQL Server.

Включают Схемы в новой базе данных:

В новой базе данных нажимают на папку "Database Diagrams". Studio управления SQL-сервером предложит Вам к схемам enble. Если Вы хорошо этот шаг, у Вас будет sysdiagrams таблица в базе данных.

Затем выполняют следующее:

INSERT INTO newdb.dbo.sysdiagrams 
     SELECT name, principal_id,[version], [definition]
       FROM olddb.dbo.sysdiagrams
16
ответ дан Moes 15 October 2019 в 07:30
поделиться

Вы можете сценарий схемы ( ссылка архива ) в .sql файл...

11
ответ дан Dai 15 October 2019 в 07:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: