SQL SMO для выполнения пакетного сценария TSQL

Я использую SMO для выполнения пакетного сценария SQL. В Management Studio сценарий выполняется примерно за 2 секунды. Со следующим кодом это занимает около 15 секунд.

var connectionString = GetConnectionString();
// need to use master because the DB in the connection string no longer exists  
// because we dropped it already
var builder = new SqlConnectionStringBuilder(connectionString) 
{ 
    InitialCatalog = "master" 
};

using (var sqlConnection = new SqlConnection(builder.ToString()))
{
    var serverConnection = new ServerConnection(sqlConnection);
    var server = new Server(serverConnection);

    // hangs here for about 12 -15 seconds
    server.ConnectionContext.ExecuteNonQuery(sql);  
}

Сценарий создает новую базу данных и вставляет несколько тысяч строк в несколько таблиц. Результирующий размер БД составляет около 5 МБ.

У кого-нибудь есть опыт или есть предложение, почему это может работать так медленно с SMO?

5
задан gunr2171 27 March 2014 в 18:18
поделиться