H2命令行查询结果被部分截断,如何设置使其返回完整数据?
H2 Shell查询结果截断问题解决方案
H2命令行Shell工具默认对大字段(如VARBINARY、长VARCHAR)设置了显示长度限制,你可以通过两种方式关闭截断:
- 启动时指定全局参数
启动Shell命令时追加-maxColumnLength 0参数,0代表无长度限制,修改后的启动命令如下:java -cp h2-1.4.199.jar org.h2.tools.Shell -url "jdbc:h2:path/to/h2/mydb" -user randomuser -password randompass -maxColumnLength 0 - 会话内动态修改
如果你已经进入Shell交互界面,不需要退出重连,直接执行以下SQL即可让当前会话所有查询取消截断:SET MAX_COLUMN_LENGTH 0;
如果你需要导出OBJECT_DATA的完整二进制内容到本地文件,不需要在终端打印,可以执行如下语句:
CALL FILE_WRITE('/your/local/path/export.bin', OBJECT_DATA) FROM MYTABLE WHERE UNIQUE_JOB_NAME = '你的任务名';
内容的提问来源于stack exchange,提问作者Shailesh Suryawanshi
相关产品推荐
相关产品推荐

