У нас есть локальная запланированная задача Windows, которую необходимо перенести в Azure Paas.
Задача состоит в том, чтобы ежедневно восстанавливать чистую версию этой же базы данных для повышения производительности сайта.
Задача - запустить пакетный файл с помощью приведенного ниже сценария.
SQLCMD -E -S server-name -Q "use master; alter database myDatabase set
single_user with rollback immediate; alter database myDatabase set
multi_user; RESTORE DATABASE myDatabase FROM DISK='C:\Dir\myDatabase.bak';
USE myDatabase; CREATE USER myUser FOR LOGIN myUser; USE myDatabase; ALTER
ROLE db_owner ADD MEMBER myUser"
Требуется реализовать аналогичную функциональность, создав проект Azure C # WebJob через Visual Studio и опубликовать его каквеб-работа Azure.
Должна остаться только схема базы данных, никаких данных или журналов.
using (SqlConnection connection = new SqlConnection(ConfigurationManager.AppSettings["AzureDBConnString"]))
{
connection.Open();
var queryString_RestoreMyDatabase = @"?????"; // what to add here?
using (SqlCommand cmd_RestoreMyDatabase = new SqlCommand(queryString_RestoreMyDatabase, connection))
{
cmd_RestoreMyDatabase.ExecuteNonQuery();
}
}
Возможно ли вышеизложенное?Какие команды SQL мы можем использовать для queryString_RestoreMyDatabase
для достижения в соответствии с заголовком этого поста?