Поделиться через


Использование режима записи

Программы SMO могут записывать и записывать эквивалентные инструкции Transact-SQL, выданные программой вместо этого или в дополнение к операторам, выполняемым программой. Режим записи можно включить с помощью ServerConnection объекта или с помощью ConnectionContext свойства Server объекта.

Пример

Чтобы использовать любой приведенный пример кода, необходимо выбрать среду программирования, шаблон программирования и язык программирования, в котором будет создано приложение. Дополнительные сведения см. в статье "Практическое руководство. Создание проекта SMO Visual Basic в Visual Studio .NET" или "Практическое руководство. Создание проекта SMO Visual C# в Visual Studio .NET" в документации по SQL Server.

Включение режима записи в Visual Basic

Этот пример кода включает режим записи, а затем отображает команды Transact-SQL, которые хранятся в буфере записи.

Включение режима записи в Visual C#

Этот пример кода включает режим записи, а затем отображает команды Transact-SQL, которые хранятся в буфере записи.

{   
// Connect to the local, default instance of SQL Server.   
Server srv;   
srv = new Server();   
// Set the execution mode to CaptureSql for the connection.   
srv.ConnectionContext.SqlExecutionModes = SqlExecutionModes.CaptureSql;   
// Make a modification to the server that is to be captured.   
srv.UserOptions.AnsiNulls = true;   
srv.Alter();   
// Iterate through the strings in the capture buffer and display the captured statements.   
string s;   
foreach ( String p_s in srv.ConnectionContext.CapturedSql.Text ) {   
   Console.WriteLine(p_s);   
}   
// Execute the captured statements.   
srv.ConnectionContext.ExecuteNonQuery(srv.ConnectionContext.CapturedSql.Text);   
// Revert to immediate execution mode.   
srv.ConnectionContext.SqlExecutionModes = SqlExecutionModes.ExecuteSql;   
}