![]() |
1
1
除了
—— Oracle 10g Release 2 Datatypes
RAW最大可设置为2000字节,使用
然而:
|
![]() |
2
3
在Oracle中,原始数据类型适合存储二进制值。 使用字符数据类型存储二进制数据的问题是,这些值要服从 字符集转换 . 如果客户机字符集与数据库字符集不匹配,则值将进行转换。(也就是说,一个编码中的二进制值表示一个特定字符,但该字符可以由另一个字符集中的不同二进制值表示。 对于字符数据类型,Oracle保留“character”值,而不是编码的二进制值。 如果要使用字符(例如char或varchar2)数据类型存储二进制值,则需要将二进制值编码为纯文本,并存储和检索编码值。两种流行的二进制到文本编码是十六进制和base64(uuencode)。 Oracle提供了内置函数rawtohex和hextoraw,用于将二进制(原始数据类型)编码和解码为十六进制字符串(varchar2数据类型)。 |
![]() |
3
1
最好的解决方案是使用原始数据类型,它用于存储二进制数据。但是,原始数据是作为十六进制值插入和检索的,因此可能需要进行一些转换。 您还应该能够使用char或varchar2,但是这些数据类型不会将字段约束为仅限二进制数据。如果您告诉我们您在尝试插入char列时收到了什么错误,我们可能可以帮助您解决这个问题… 请记住,如果使用char数据类型,则char值总是填充到字段的长度,因此在某些情况下,在使用之前可能需要修剪较小的值。 |
![]() |
maddy · 如何根据oracle SQL中的某一列值进行排名 2 年前 |
![]() |
kiric8494 · 显示以元音开头和结尾的城市名称 2 年前 |
![]() |
Franz Biberkopf · Oracle:组合子查询和聚合函数 3 年前 |
![]() |
BitLauncher · 甲骨文-如何模拟位列和布尔和/或? 3 年前 |
![]() |
Arifullah · 如何从oracle中的列中删除特定的初始字符? 3 年前 |
![]() |
Anar · Oracle SQL用户定义函数 3 年前 |
![]() |
user1312312 · 如何为一组表编写通用触发器? 3 年前 |