sql - 为现有索引生成 T-SQL

标签 sql t-sql

如何以编程方式为数据库中的现有索引生成 T-SQL CREATE 语句? SQL Studio 提供了“Script Index as->Create to”命令,可生成以下形式的代码:

IF NOT EXISTS(SELECT * FROM sys.indexes WHERE name = N'IX_myindex')
    CREATE NONCLUSTERED INDEX [IX_myindex] ON [dbo].[mytable] 
    (
        [my_id] ASC
    )WITH (SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF) ON [PRIMARY]
GO

您将如何以编程方式完成此操作(最好通过 Python)?

最佳答案

使用 T-SQL 生成它是一场噩梦。如果您愿意使用 SMO 和 c# 那么请查看 SMO Script Index and FK's on a database

您甚至可以从 PowerShell 调用 SMO,因此这可能是另一种选择。

关于sql - 为现有索引生成 T-SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3018465/

相关文章:

sql - 使用生日的年龄组计数

.net - 使用 xslt 客户端拆分字符串

T-SQL 查询批量处理数据而不破坏组

SQL Server : A connection was successfully established with the server, 但随后在登录过程中发生错误

sql - SQL 如何计算作业计划的 NEXT_RUN_DATE?

sql - 将一组行显示为单行

t-sql - 如何填充前一行中的缺失值

csv - 由于某些字段中存在意外换行,SQL COPY INTO 无法解析 CSV。 ROWTERMINATOR 和 FIELDQUOTE 参数不起作用

sql - Postgresql 函数波动性类别

sql - 什么是Mysql select语句来显示表的列表?