You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用SSMS 18.4在Azure SQL无服务器池生成表脚本失败求助

问题描述

尝试使用SSMS 18.4版本在Azure SQL无服务器池中生成表脚本,操作步骤:在对象资源管理器中右键目标表,依次选择「编写表脚本为」→「CREATE到」→「新查询编辑器窗口」。

但持续出现错误,弹窗提示内容为Invalid version: 16. (Microsoft.SqlServer.Smo),完整错误信息如下:

Invalid version: 16. (Microsoft.SqlServer.Smo)

如需帮助,请参考Microsoft官方相关支持文档

程序位置:
at Microsoft.SqlServer.Management.Smo.ScriptingOptions.ConvertToSqlServerVersion(Int32 majorVersion, Int32 minorVersion)
at Microsoft.SqlServer.Management.Smo.ScriptingOptions.ConvertToSqlServerVersion(ServerVersion serverVersion)
at Microsoft.SqlServer.Management.UserSettings.ScriptingOptions.GetSmoScriptingOptions(SqlSmoObject smoObj)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ScriptNodeActionContext.Script(SqlTextWriter writer)
at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.SqlScriptMenu.OnScriptItemClick(Object sender, EventArgs e)

请问是否需要降级SSMS版本来解决该问题?


解决方案

不需要降级SSMS,反而建议升级到SSMS 18.5或更高版本:

  • 问题根源:SSMS 18.4依赖的SMO(SQL Server管理对象)版本为15,而Azure SQL无服务器池的版本标识为16,旧版SMO无法识别该版本号,导致脚本生成时抛出错误。
  • SSMS 18.5及后续版本已更新SMO组件,添加了对版本16的支持,可正常为Azure SQL无服务器池生成表脚本。

若暂时无法升级,可使用T-SQL手动生成表结构脚本作为替代,示例如下(将YourTableName替换为目标表名):

SELECT 
    'CREATE TABLE ' + QUOTENAME(t.name) + ' (' + STRING_AGG(
        QUOTENAME(c.name) + ' ' + 
        CASE 
            WHEN tp.name IN ('varchar', 'nvarchar', 'char', 'nchar') THEN tp.name + '(' + CASE WHEN c.max_length = -1 THEN 'MAX' ELSE CAST(c.max_length AS VARCHAR) END + ')'
            WHEN tp.name IN ('decimal', 'numeric') THEN tp.name + '(' + CAST(c.precision AS VARCHAR) + ',' + CAST(c.scale AS VARCHAR) + ')'
            ELSE tp.name 
        END + 
        CASE WHEN c.is_nullable = 0 THEN ' NOT NULL' ELSE ' NULL' END,
        ', '
    ) + ')' AS CreateTableScript
FROM sys.tables t
JOIN sys.columns c ON t.object_id = c.object_id
JOIN sys.types tp ON c.system_type_id = tp.system_type_id AND c.user_type_id = tp.user_type_id
WHERE t.name = 'YourTableName'
GROUP BY t.name;

内容的提问来源于stack exchange,提问作者Patterson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 13:35:14