通过脚本读取 SQL CLOB
Reading SQL CLOB via a script
我有一个很长的(大约 1000 个字符)clob
对象存储在 table 中。我需要通过 bash
脚本读取这个值。我该怎么做?
我试过使用普通的 SELECT
查询。但是随后输出为多行。我无法合并它们,因为在特殊情况下它不会在数据库中生成准确的文本(例如,如果单行末尾有 space)
例如
abcd
efg
hijk
如果我将行与 sed ':a;N;$!ba;s/\n//g;'
合并,当实际文本为 abcdefg hijk
.
时,这将变为 abcdefghijk
执行我在这里尝试执行的操作的最佳方法是什么。
由于找不到使用上述方法的方法,我设法使用不同的方法来完成我想做的事情。
由于 space 字符是问题所在,并且由于我是插入这些 clob
的人,所以我没有直接插入文本,所以我首先 base64
对文本进行编码并将编码后的文本插入 table.
之后我可以使用相同的 SELECT
查询。我必须对 select 输出执行 base64
解码才能获得原始文本。
我有一个很长的(大约 1000 个字符)clob
对象存储在 table 中。我需要通过 bash
脚本读取这个值。我该怎么做?
我试过使用普通的 SELECT
查询。但是随后输出为多行。我无法合并它们,因为在特殊情况下它不会在数据库中生成准确的文本(例如,如果单行末尾有 space)
例如
abcd
efg
hijk
如果我将行与 sed ':a;N;$!ba;s/\n//g;'
合并,当实际文本为 abcdefg hijk
.
abcdefghijk
执行我在这里尝试执行的操作的最佳方法是什么。
由于找不到使用上述方法的方法,我设法使用不同的方法来完成我想做的事情。
由于 space 字符是问题所在,并且由于我是插入这些 clob
的人,所以我没有直接插入文本,所以我首先 base64
对文本进行编码并将编码后的文本插入 table.
之后我可以使用相同的 SELECT
查询。我必须对 select 输出执行 base64
解码才能获得原始文本。