oracle中读取BLOB大字段比较费时

发布于 2021-11-15 17:54:04 字数 153 浏览 813 评论 10

数据库中数据量上千万级的,需要用到大字段blob 存储了大概4.5K的数据。前提是,不存储文件路径,必须把表中的数据存储到blob字段中。

当每次去查询此字段时,一个简单的sql语句都比较费时,当不查询此字段时,速度还是比较快的。

有什么好办法解决这个问题吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(10

疑心病 2021-11-16 04:05:23

引用来自#8楼“阿咪”的帖子

引用来自#7楼“曾建凯”的帖子

PHP的PDO在处理BLOB的时候,如果某个BLOB太大,也会发生内存不足的问题。

有两种解决办法:

1、采用原生Oracle连接驱动,不过Oracle默认所有字段都大写,很不爽。

2、限制BLOB的表查询,可采用主信息一个表,BLOB存另外一个表,或者列表查询的时候不查询blob字段。

恋你朝朝暮暮 2021-11-16 04:05:14

新建张表关联外键 保存BLOB数据,lizy load的方式  在需要的时候 在读取

正解!

秋意浓 2021-11-16 03:39:32

在JDBC4.0中 对 BLOB 和 CLOB 功能做了增强

浮生未歇 2021-11-16 03:36:59

引用来自#7楼“曾建凯”的帖子

PHP的PDO在处理BLOB的时候,如果某个BLOB太大,也会发生内存不足的问题。

有两种解决办法:

1、采用原生Oracle连接驱动,不过Oracle默认所有字段都大写,很不爽。

2、限制BLOB的表查询,可采用主信息一个表,BLOB存另外一个表,或者列表查询的时候不查询blob字段。

旧伤慢歌 2021-11-16 03:23:41

PHP的PDO在处理BLOB的时候,如果某个BLOB太大,也会发生内存不足的问题。

有两种解决办法:

1、采用原生Oracle连接驱动,不过Oracle默认所有字段都大写,很不爽。

2、限制BLOB的表查询,可采用主信息一个表,BLOB存另外一个表,或者列表查询的时候不查询blob字段。

眼眸里的那抹悲凉 2021-11-16 03:03:30

引用来自#4楼“曾建凯”的帖子

他的意思,是select的时候不要select *,先不要查询blob的字段。把数据读出来以后,再通过其他途径来读。

囚你心 2021-11-16 02:25:53

新建张表关联外键 保存BLOB数据,lizy load的方式  在需要的时候 在读取

甜扑 2021-11-16 02:20:03

他的意思,是select的时候不要select *,先不要查询blob的字段。把数据读出来以后,再通过其他途径来读。

掩饰不了的爱 2021-11-16 01:24:28

引用来自#2楼“joliny”的帖子

查询的时候不查询该字段,利用主键来读取静态或者缓存缓存好的Blob大字段信息。

好听的两个字的网名 2021-11-15 20:17:01

查询的时候不查询该字段,利用主键来读取静态或者缓存缓存好的Blob大字段信息。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文