【问题标题】:Large XML Files in SSMSSSMS 中的大型 XML 文件
【发布时间】:2020-04-27 08:46:25
【问题描述】:

我尝试在 SSMS 中导入一个大的 XML 文件, 但是我遇到了这个问题。

“INSXMLII.XML”太大,无法用 XML 编辑器打开。最大文件 大小为“10”MB。请更新注册表项 'HKCU\Software\Microsoft\SQL 服务器管理 Studio\18.0_IsoShell_Config\XmlEditor\MaxFileSizeSupportedByLanguageService' 更改最大尺寸。

我使用的方法来修复: 导航到:

"C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE"

在大约第 322 行编辑“Microsoft.XmlEditor.pkgdef”文件:

换行:

"MaxFileSizeSupportedByLanguageService"="10"

收件人:

"MaxFileSizeSupportedByLanguageService"="99999999999"

重新启动 SSMS。

但是,它遇到了这个问题:

"访问路径 C:\Program Files (x86)\Microsoft SQL Server 管理工作室 18\Common7\IDE\CommonExtensions\Platform\Shell\Microsoft.XmlEditor.pkgdef"

有什么想法吗?我完全没有想法~ 非常感谢

【问题讨论】:

  • 99999999999 可能太大。试试 100 之类的东西(你忘了提到文件的实际大小)。
  • 我的想法是,这不是 SSMS 的用途。如果 XML 小于 2GB,您可以将其导入 XML 列并使用 T-SQL 进行查询。
  • 我通常用c#或vb.net等编程语言解析文件,然后将数据放入数据库。
  • 如何“导入”? SSMS 不适用于大文件,请改用sqlcmd
  • @jasonroy7dct,请编辑您的帖子并详细说明“...我尝试在 SSMS 中导入一个大 XML 文件...”并分享您的 T-SQL。您分享了您的错误,但我们不知道您尝试做什么以及导致错误的原因。

标签: sql sql-server xml database ssms


【解决方案1】:

作为一种解决方法,您可以使用此 C# 代码读取所有内容:

            using (var connection = new SqlConnection(_connectionString))
            using (var sqlCommand = new SqlCommand("..YOUR QUERY..", connection))
            {
                connection.Open();

                var cellStringBuilder = new StringBuilder();
                using (var dataReader = await sqlCommand.ExecuteReaderAsync())
                {
                    while (dataReader.Read()) cellStringBuilder.Append(dataReader.GetString(0));
                }

                // Do something with cellStringBuilder.ToString()...
            }

【讨论】:

    猜你喜欢
    • 2020-10-16
    • 2011-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多