set_byte() 是一个系统函数,用于设置二进制字符串中指定字节的值。
set_byte() 添加于 PostgreSQL 7.0。
用法
set_byte (bytesbytea,ninteger,newvalueinteger) →bytea
变更历史
- PostgreSQL 7.0
- 添加 (提交 eca02fee)
请注意,set_byte() 在早期版本中以 byteaSetByte() 的形式存在,但实现不正确。
示例
设置 set_byte() 的基本用法示例
postgres=# SELECT set_byte('\x2a2b', 0, 0);
set_byte
----------
\x002b
(1 row)
尝试设置提供字符串末尾之外的字节
postgres=# SELECT set_byte('\x2a2b', 3, 0);
ERROR: index 3 out of valid range, 0..1
如果提供的替换值超过 255,它将被包装以得到一个有效的字节值。
postgres=# SELECT set_byte('\x2a2b', 0, 256);
set_byte
----------
\x002b
(1 row)
参考资料
- PostgreSQL 文档: 其他二进制字符串函数
