我正在研究一个以.net核心为基础并且以azure托管的项目,该项目被具有不同数据库的世界各地的不同客户端用作SAAS应用程序。 现在,我有一个要求,要求我们删除那些不再位于主数据库中并由管理员删除的客户端的数据库。
我怀疑我们是否真的应该为将要删除的客户端删除数据库?
如果可以,通过应用程序删除数据库是否可行,还是应该使用一些实用程序来做到这一点?
我还担心服务器是否允许应用程序删除数据库?
有人可以建议我吗?
我正在使用以下技术堆栈: .net核心(后端)和EF核心 MSSQL(数据库)
答案 0 :(得分:0)
有几种不同的方法。.本质上,它的工作原理与任何其他数据库相同,因此您可以执行T-SQL进行操作。或使用Azure SDK。.以下是一些不同方法的示例:{{3 }}
您可以像这样在EF中执行原始SQL语句:
using(var context = new SampleContext())
{
var commandText = "INSERT Categories (CategoryName) VALUES (@CategoryName)";
var name = new SqlParameter("@CategoryName", "Test");
context.Database.ExecuteSqlCommand(commandText, name);
}
那么,使用该格式,您可以在其中添加DROP数据库命令吗?摘自:https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-database-transact-sql?view=sql-server-2017-在Database.ExecuteCommand部分下