kzgsz 2010-05-03 01:40
浏览 210
已采纳

大家帮我看下,我怎么用jdbc就是插入入中文,太奇怪了?数据库的问题 还是 JAR包的问题

数据库用的是oracle 10g
连接jar什么classes12 ojdbc14 正常的oracle jar包都试过了
大家帮看看啊 一直卡在中文这个地方 太奇怪了

Oracle数据字符集是SIMPLIFIED CHINESE.ZHS16GBK
可以手动在数据库里面插入中文 且不是乱码
public class Jdbc_to_oracle {

public static void main(String[] args) throws SQLException {
     String url="jdbc:oracle:thin:@localhost:1521:kzgsz";
     String oracle_Driver="oracle.jdbc.driver.OracleDriver";
     Connection conn = null;
     PreparedStatement prestm;

     try {
         Class.forName(oracle_Driver);
         conn = DriverManager.getConnection(url, "zz", "zz");
         prestm=conn.prepareStatement("insert into T_TEST(id,name) values (8,?)");
         //There is a point to note that is in jdbc,? is begin with 1,but in hibernate it begin with 0
         //very important 
         System.out.println("1111111111111");
         prestm.setString(1, "中文");
         System.out.println("2222222222222");
         prestm.executeUpdate();
         System.out.println("3333333333333");
    } catch (Exception e) {
        // TODO: handle exception
    }
    finally
    {
        try {
            conn.close();
        } catch (Exception e2) {
            // TODO: handle exception
        }
    }
}

}

输出:
1111111111111
2222222222222

就是无法插入

  • 写回答

2条回答 默认 最新

  • 拽拽的初行者 2010-05-03 10:35
    关注

    是的,是中文字符集的问题。
    参见:
    [code="java"]http://www.blogjava.net/chenlb/archive/2007/10/20/154558.html[/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?