gpt4 book ai didi

sql-server - Sql Server 中的 varbinary(max) 数据类型问题

转载 作者:行者123 更新时间:2023-12-05 07:55:35 24 4
gpt4 key购买 nike

我创建了一个包含两列的表,数据类型为 varbinary(max)。我在这些列中以二进制格式保存 pdf 文件。在这些列中插入 pdf 文件时没有问题。但是,当我在 select 查询中选择只有一列 varbinary 类型的记录时,它需要大约一分钟的时间来获取记录。插入的pdf文件大小为1MB。这是获取单个记录的 sql 查询:

select binarypdffile from gm_packet where jobpacketid=1

如果有一种方法可以提高 varbinary 数据类型的性能,请提出建议。

最佳答案

您可以尝试对以下查询进行计时吗:

SELECT cnt = COUNT(*) INTO #test1 FROM gm_packet WHERE jobpacketid = 1

SELECT binarypdffile INTO #test2 FROM gm_packet WHERE jobpacketid = 1

第一个测试找到记录需要多长时间。如果很慢,在 jobpacketid 字段上添加一个索引。假设这些值按顺序出现,我不会担心将来添加记录时的性能。否则,您可能需要偶尔重建索引。

第二个测试从表中获取数据(并将其存储回另一个表)需要多长时间。由于没有数据从“系统”中流出,因此它应该显示“原始数据库性能”而不受任何“外部”影响。

两者都不应该很长。如果不是,但在 SSMS 中运行原始查询并获取网格中的二进制数据仍然需要“很长时间”,那么我猜这是网络问题(wifi?)或者 SSMS 非常糟糕在 GUI 中表示 blob;之前已经注意到了 =)

关于sql-server - Sql Server 中的 varbinary(max) 数据类型问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29605755/

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