gpt4 book ai didi

c# - 如何从代码生成 CREATE TABLE 脚本?

转载 作者:太空狗 更新时间:2023-10-29 17:50:58 24 4
gpt4 key购买 nike

在 SQL Server Management Studio 中,我可以通过右键单击表并选择 Script Table As 为表生成 CREATE TABLE 脚本。

如何在 C# 中获得相同的结果?我可以使用 SMO 或其他一些方法吗?

[为避免问题被关闭,请发布工作代码示例,而不是单行代码或指向高级文档的链接。]

最佳答案

以下代码将通过指定服务器“XXX”、表“ZZZ”和模式“PPP”在位置“QQQ”创建一个脚本。那里有一些示例脚本可以复制整个数据库,这仅适用于表。这就是我一直试图弄清楚的,我终于使用下面的代码让它工作了。这只是一个简单的示例,例如生成的脚本不会创建表的索引,而只会创建其最基本的结构。要指定脚本的创建方式,请将 ScriptingOptions 的实例传递到对 table.Script() 的调用中。

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Smo.SqlEnum;
using System.Configuration;
using System.Collections.Specialized;

namespace SmoTest {
class Program {
static void Main(string[] args) {

Server server = new Server("XXX");
Database database = new Database();
database = server.Databases["YYY"];
Table table = database.Tables["ZZZ", @"PPP"];

StringCollection result = table.Script();

var script = "";
foreach (var line in result) {
script += line;
}

System.IO.StreamWriter fs = System.IO.File.CreateText(@"QQQ");
fs.Write(script);
fs.Close();

}
}
}

关于c# - 如何从代码生成 CREATE TABLE 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11656324/

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