gpt4 book ai didi

C# SMO - 将表数据脚本化到文件。 throw 错误

转载 作者:太空狗 更新时间:2023-10-29 23:18:24 25 4
gpt4 key购买 nike

在重新创建表之前,我正在尝试创建数据库中包含的数据的备份。我已经连接到服务器并创建文件来存储 SQL。问题是它在最后一行抛出错误。

“对象引用未设置到对象的实例”

我整天都在参与这个项目,所以可能会遗漏一些新的眼睛会有所帮助的东西。

代码如下:

public void scriptTables()
{
string folder = HttpContext.Current.Server.MapPath("/Scripts/SQLScripts/");

Server myServer = new Server(".\\SQLEXPRESS");
Database CMSDB = myServer.Databases["CMSDB"];

Scripter script = new Scripter(myServer);
ScriptingOptions so = new ScriptingOptions();
so.ScriptData = true;
so.ScriptSchema = true;
so.ScriptDrops = false;

foreach (Table table in CMSDB.Tables)
{
string tables = table.ToString();
string filename = folder + table + ".sql";
FileStream fs = File.Create(filename);
so.FileName = filename;

CMSDB.Tables[tables].EnumScript(so);
}
}
}

我正在做的一些背景:

我想提取数据库中已经存在的数据,然后更改实体模型。当应用程序重新启动时,EF 框架将删除并重新创建数据库,此时我将重新输入之前存在的数据。不太确定整个过程是否会成功,但这必须在他们发布 EF 中的迁移功能之前完成。

希望有人能帮忙。谢谢

最佳答案

我认为您的问题可能是 table.ToString()。尝试改用 table.Name。

关于C# SMO - 将表数据脚本化到文件。 throw 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5365408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com