0020-使用JDBC向Kudu表插入中文字符-双引号的秘密
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。1.问题描述使用Impala JDBC向Kudu表中插入中文字符,插入的中文字符串乱码,中文字符串被截断。2.问题复现测试环境:CDH5.
千家信息网最后更新 2026年11月01日0020-使用JDBC向Kudu表插入中文字符-双引号的秘密
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
1.问题描述
使用Impala JDBC向Kudu表中插入中文字符,插入的中文字符串乱码,中文字符串被截断。
2.问题复现
测试环境:
- CDH5.12.0
- Kudu1.4.0
- ImpalaJDBC41_2.5.35
1.使用ImpalaJDBC代码进行测试,测试代码
static String JDBC_DRIVER = "com.cloudera.impala.jdbc41.Driver";static String CONNECTION_URL = "jdbc:impala://ip-172-31-10-118:21050/default";public static void main(String[] args) { Connection con = null; ResultSet rs = null; PreparedStatement ps = null; try { Class.forName(JDBC_DRIVER); con = DriverManager.getConnection(CONNECTION_URL); String insertsql = "insertinto my_first_table values(46, '测试中文字符')"; ps = con.prepareStatement(insertsql); ps.execute(); ps.close(); ps = con.prepareStatement("select* from my_first_table order by id asc"); rs = ps.executeQuery(); while (rs.next()) { System.out.println(rs.getLong(1) + "\t" +rs.getString(2)); } } catch (Exception e) { e.printStackTrace(); } finally { try { // 关闭rs、ps和con rs.close(); ps.close(); con.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}2.向Kudu表中分别插入测试数据,如"测试","测试中文","测试中文字符"
String insertsql = "insert into my_first_table values(44, '测试')";String insertsql = "insert into my_first_table values(45, '测试中文')";String insertsql = "insert into my_first_table values(46, '测试中文字符')";如下是按测试顺序插入的数据
通过以上操作重现问题。
3.解决方法
修改程序中插入语句,将插入字符串的单引号修改为双引号
String insertsql = "insert into my_first_table values(51, \"测试中文字符\")";String insertsql = "insert into my_first_table values(52, \"测试中文\")";String insertsql = "insert into my_first_table values(53, \"测试\")";修改后重新向Kudu中插入测试数据:"测试中文字符","测试中文","测试"
使用Hue查询显示如下:

中文字符串插入Kudu显示正常。
4.备注
1.使用Cloudera官网最新的JDBC驱动,插入中文字符时也有上述问题
下载地址:https://downloads.cloudera.com/connectors/impala\_jdbc\_2.5.38.1058.zip
2.通过Impala-shell插入中文字符串正常
[172.31.10.118:21000] > insert into my_first_table values(66,'插入中文字符');Modified 1 row(s), 0 row error(s) in 0.11s[172.31.10.118:21000] > select * from my_first_table where id=66;+----+--------------+| id | name |+----+--------------+| 66 | 插入中文字符 |+----+--------------+Fetched 1 row(s) in 0.21s[172.31.10.118:21000] >[172.31.10.118:21000] > insert into my_first_table values(77, "测试中文字符");Modified 1 row(s), 0 row error(s) in 0.11s[172.31.10.118:21000] > select * from my_first_table where id=77;+----+--------------+| id | name |+----+--------------+| 77 | 测试中文字符 |+----+--------------+Fetched 1 row(s) in 0.18s[172.31.10.118:21000] > 
醉酒鞭名马,少年多浮夸! 岭南浣溪沙,呕吐酒肆下!挚友不肯放,数据玩的花!
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
欢迎关注Hadoop实操,第一时间,分享更多Hadoop干货,喜欢请关注分享。
原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操
测试
中文
字符
字符串
数据
问题
引号
温馨
代码
图片
手机
高清
无码
提示
乱码
公众
原创文章
地址
备注
少年
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广东猪兼强互联网科技有限公司
科技类互联网
高科技与互联网
以房互联网科技
西安互联网科技公司
碳银互联网科技有限公司
润盈互联网科技
佰商互联网科技有限公司
农村开互联网科技讲堂
赶超互联网科技 微信多开
消费医药和互联网科技
互联网第三次科技革命特征
领航科技大厦互联网公司
互联网科技快讯热点
互联网科技年终奖
从那以后互联网科技有限公司
科技信息时代互联网发展
深圳互联网科技园地址
互联网科技企业文化
科技发展第三阶段互联网时代
互联网汽车科技小镇
科技与互联网哪个更好
互联网科技有哪些公司
荆州市昕露互联网络科技有限公司
花神(南京)互联网科技有限公司
晋城互联网科技
山东有哪些互联网科技公司
众安科技工业互联网合作
杭州披云加互联网科技有限公司
众联互联网络科技