向数据库添加信息成功但显示为问号解决办法

向数据库添加信息成功但显示为问号

各位仁兄,帮帮忙!

我用下面这个代码向数据库添加信息

package org.bzc.jdbc;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.sql.Statement;

public class DoInsert {

private Connection conn = null;

private Statement stmt = null;

private String driver = “com.mysql.jdbc.Driver”;

private String username = “root”;

private String password = “root”;

private String sql =

“INSERT INTO student(name,myclass,score) VALUES(‘陈秀’,’0801′,80)”;

public boolean addStudent(){

boolean flag = false;

try {

// step1: 加载数据库厂商提供的驱动程序

Class.forName(driver);

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

// step2: 提供数据库连接的URL

String url = “jdbc:mysql://localhost:3306/test”;

try {

//step3: 通过DriverManager 获得数据库的一个连接对象

conn = DriverManager.getConnection(url,username,password);

} catch (SQLException e) {

e.printStackTrace();

}

try {

// step4: 创建 Statement(SQL的执行环境)

stmt = conn.createStatement();

// step5: 执行SQL语句

int row = stmt.executeUpdate(sql);

// step6: 处理结果

if (row == 1) {

flag = true;

} catch (SQLException e) {

e.printStackTrace();

} finally {

// step7: 关闭JDBC的资源

if (null != stmt) {

try { stmt.close();}

catch (SQLException e) {

e.printStackTrace();

}

}

if (null != conn) {

try { conn.close();}

catch (SQLException e) {

e.printStackTrace ();

}

}

}

return flag;

}

public static void main(String[] args) {

DoInsert doinsert = new DoInsert();

boolean flag = doinsert.addStudent();

if (flag) {

System.out.println(“添加信息成功!”);

}

else {

System.out.println(“添加信息失败!”);

}

}

}

但添加成功后,在数据库里看到那个姓名却显示为三个问号了,为什么呀??怎样解决?



http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx

MySQL 中文显示乱码




字符集的原因,参考一下上贴中的解决方案。

1。 在你的连接URL串中设置char set,这个要看一下手册中的说明

2。在INSERT之前执行一下 ‘set names xxxx’ xxx 是你表中对应的字符集。

向数据库添加信息成功但显示为问号解决办法

相关文章:

你感兴趣的文章:

标签云: