通过C#和SMO检查和删除现有表

Joh*_*n S 6 c# smo

我试图按名称查找SQL表,如果存在则删除它.这一切都需要使用SMO在C#中完成.

为了使它更复杂一点,该表还具有除"dbo"之外的模式.

最后,表格将通过SMO重新创建(我有这个工作),但我必须确保它不存在,然后才能重新创建它.

我所看到的所有示例似乎都在创建,然后将表全部放在同一个上下文中.在我的情况下,表格将在之前的会话中创建并填充.

Kev*_*ger 9

var connection = new SqlConnection(connectionString);
var server = new Server(new ServerConnection(connection));

db = server.Databases["YourFavDB"];

db.Tables["YourHatedTable"].Drop();
Run Code Online (Sandbox Code Playgroud)


jri*_*sta 0

第一个问题是,为什么不能用 DDL 删除并重新创建?

并回答你的问题:

Table table = new Table(myDatabase, "MyTable", "MySchema");
Run Code Online (Sandbox Code Playgroud)