sql - dbms_lob.getlength() 与 length() 在 Oracle 中查找 blob 大小

标签 sql oracle blob

我得到了相同的结果

select length(column_name) from table

select dbms_lob.getlength(column_name) from table 

但是,答案 this question似乎更喜欢使用dbms_lob.getlength()

使用dbms_lob.getlength()有什么好处吗?

如果它改变了答案,我知道所有 BLOB 都是 .bmp 图像(以前从未使用过 BLOB)。

最佳答案

lengthdbms_lob.getlength返回应用于CLOB(字符 LOB)时的字符数。当应用于 BLOB(二进制 LOB)时,dbms_lob.getlength 将返回字节数,该数可能与多字节字符集中的字符数不同。

由于文档没有指定在 BLOB 上应用 length 时会发生什么,因此我建议不要在这种情况下使用它。如果您想要 BLOB 中的字节数,请使用dbms_lob.getlength

关于sql - dbms_lob.getlength() 与 length() 在 Oracle 中查找 blob 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2373138/

相关文章:

mysql - 如何从数据库中删除\r\n和多个反斜杠,以及如何防止它?

SQL 选择如果计数

mysql - ExecuteNonQuery 时出错

php - 我没有收到Mysql错误,但查询无法正常工作

java - 为什么我无法在 JSP 文件中显示 MySQL BLOB 类型的图像?

oracle - 将 Oracle Developer Tools 与 Source Control for Visual Studio 结合使用

SQL将名称的第一个和最后一个字母大写

c# - Oracle 存储过程、SYS_REFCURSOR 和 NHibernate

javascript - Safari 12 不会下载 PDF blob

blob - 隐藏 Azure Blob 网址