使用 Ant SQLExec 执行sql文件中文乱码
2011-08-10 14:03
197 查看
项目中需要执行 Sql脚本,采用ant来实现,代码如下:
SQLExec sqlExec = new SQLExec();
sqlExec.setDriver(jDriver);
String url;
url = connectDB;
sqlExec.setUrl(url);
sqlExec.setUserid(username);
sqlExec.setPassword(password);
//sqlExec.getProject().set
sqlExec.setSrc(new File(strFullFile));
//sqlExec.set
sqlExec.setOnerror((SQLExec.OnError) (EnumeratedAttribute
.getInstance(SQLExec.OnError.class, "abort")));
sqlExec.setPrint(true);
sqlExec.setProject(new Project());
sqlExec.execute();
log.info("数据库文件" + strFullFile + "更新完成。");
但是,在执行中却遇到问题:sql语句中包含中文时,写入到数据库后中文乱码了。查了api,sqlexec类有一方法
sqlExec.setEncoding("UTF8"); (项目中数据库编码都是使用utf8).问题依然。最后发现是sql文件的问题。sql文件本身保存的时候选择的就是默认的编码ansi。将文件另存为utf-8 编码的文件,问题解决。
SQLExec sqlExec = new SQLExec();
sqlExec.setDriver(jDriver);
String url;
url = connectDB;
sqlExec.setUrl(url);
sqlExec.setUserid(username);
sqlExec.setPassword(password);
//sqlExec.getProject().set
sqlExec.setSrc(new File(strFullFile));
//sqlExec.set
sqlExec.setOnerror((SQLExec.OnError) (EnumeratedAttribute
.getInstance(SQLExec.OnError.class, "abort")));
sqlExec.setPrint(true);
sqlExec.setProject(new Project());
sqlExec.execute();
log.info("数据库文件" + strFullFile + "更新完成。");
但是,在执行中却遇到问题:sql语句中包含中文时,写入到数据库后中文乱码了。查了api,sqlexec类有一方法
sqlExec.setEncoding("UTF8"); (项目中数据库编码都是使用utf8).问题依然。最后发现是sql文件的问题。sql文件本身保存的时候选择的就是默认的编码ansi。将文件另存为utf-8 编码的文件,问题解决。
相关文章推荐
- MySQL命令行执行插入sql文件中文乱码
- navicat执行sql文件时,中文乱码的处理
- window mysql的sql文件到linux下执行,中文乱码
- navicat执行sql文件时,中文乱码的处理
- mysql5.6命令行执行sql文件,中文数据乱码解决办法
- Oracle数据库案例整理-执行Oracle脚本失败或异常-使用SQL语句插入中文后数据库中显示乱码
- mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)
- mysql执行sql文件中文乱码解决
- 在英文操作系统里,执行包含中文的SQL语句,乱码的问题!
- Java读取解析sql文件,并使用netiler dao执行sql
- jdbc 链接mysql执行sql语句出现中文乱码问题
- 解决使用PL/SQL客户端插入中文字符Oracle乱码
- svn使用中文补丁包上传路径乱码,请执行清理命名解决方法
- 使用wamp编写PHP文件是输出中文乱码
- 解决Qt中文乱码以及汉字编码的问题(UTF-8/GBK)——ubuntu环境设置默认是utf-8,文件编码可使用Encodersoft批量转换
- JAVA使用Freemarker生成静态文件中文乱码
- 解决Sybase客户端执行SQL遇到中文乱码问题
- 使用Unicode字符集时用CFile把中文写入txt文件再用记事本打开出现乱码的问题
- osql执行SQL脚本内容包含中文时出现乱码问题的解决办法
- Java 读取文件 使用BufferReader出现中文乱码的解决办法