sql-server - 我们是否应该在 SAAS 应用程序中删除已删除客户端的物理数据库
问题描述
我正在开发一个项目,该项目位于 .net 核心并托管在 azure 上,并被世界各地拥有独立数据库的不同客户用作 SAAS 应用程序。现在我有一个要求,说我们应该删除那些不再在主数据库中并由管理员删除的客户端的数据库。
我怀疑我们是否真的应该删除将被删除的客户端的数据库?
另外,如果是的话,通过应用程序删除数据库是否可行,或者我们应该使用一些实用程序来做到这一点?
另外我担心服务器是否会允许应用程序删除数据库?
有人可以建议我吗?
遵循我正在使用的技术堆栈:.net 核心(后端)和 EF 核心 MSSQL(数据库)
解决方案
有几种不同的方法.. 本质上它与任何其他数据库的工作方式相同,因此您可以执行 T-SQL 来执行此操作.. 或使用 Azure SDK.. 以下是不同方法的一些示例:https://docs。 microsoft.com/en-us/sql/t-sql/statements/drop-database-transact-sql?view=sql-server-2017
您可以像这样在 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 Database 命令吗?取自:https ://www.learnentityframeworkcore.com/raw-sql - 在 Database.ExecuteCommand 部分下
推荐阅读
- scikit-learn - Scikit-learn : roc_auc_score 根据地面实况是否是热编码返回不同的值
- c# - 传入字典的模型项的类型为“System.Collections.Generic.List`1[System.Data.DataRow]”
- vb.net - 在我处理它们之前对 iList 进行排序
- css - 响应式背景图片?
- bash - How to generate code using Postman Collection
- sqlite - 从select返回的多行中选择指定行
- deep-learning - 有 512 个通道而不是 64 个 - 我应该在我的自动编码器中更改什么?
- c# - .Net 库中应用程序范围的属性的存储。
- python - 使用 Beautiful Soup 时无法理解空数组输出
- javascript - 如果键值匹配,则合并和减少。重构 JSON 数据响应