【发布时间】:2017-07-27 18:11:30
【问题描述】:
我正在编写一个 SMO 脚本来将我的 SQL Server 2016 数据库导出到一个文本文件。但是 Scripter 总是在我的脚本之前添加此评论:
/* ==Scripting Parameters==
Source Server Version : Version140 (14.0.600)
Source Database Engine Edition : Enterprise
Source Database Engine Type : Standalone
Target Server Version : Version140
Target Database Engine Edition : Enterprise
Target Database Engine Type : Standalone
*/
如何禁用生成此评论?
我尝试将 IncludeHeaders 设置为 false/true 但这会启用/禁用另一个评论。
我这样使用 SMO:
var connectionString = "...";
var serverConnection = new ServerConnection(new SqlConnection(connectionString));
var sqlServer = new Smo.Server(serverConnection);
var createDbScriptOptions = new Smo.ScriptingOptions();
createDbScriptOptions.NoFileGroup = true;
createDbScriptOptions.IncludeFullTextCatalogRootPath = false;
StringCollection strcoll = db.Script(createDbScriptOptions);
foreach (String st in strcoll)
{
Console.WriteLine(st);
}
或者在使用脚本编写表格或其他对象时
scripter.Script(new Urn[] { tb.Urn }
或
scripter.EnumScript(new Urn[] { tb.Urn }
评论也会被添加。
【问题讨论】:
标签: c# sql-server smo