【求助】java运行插入数据库的时候报错。。
代码
// An highlighted block
package test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class jdbcutil {
public static void main(String[] args) throws SQLException {
try {
Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
System.out.println("加载数据库驱动成功");
String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url
String user="root";//数据库的用户名
String password="";//数据库的密码
//建立数据库连接,获得连接对象conn(抛出异常即可)
Connection conn=DriverManager.getConnection(url, user, password);
System.out.println("连接数据库成功");
//生成一条mysql语句'
String sql="insert into teacher(teacherno,teacherna,teacherpa) values('t009','tom',11)";
Statement stmt=conn.createStatement();//创建一个Statement对象
stmt.executeUpdate(sql);//执行sql语句
//String sql = "UPDATE ACCOUNTS SET 密码='" + account.getPassword()
// + "' WHERE 账户名='" + account.getAccountName()+"'";
System.out.println("插入到数据库成功");
}catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("连接失败");
}
catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("插入失败");
}
}
}
控制台
加载数据库驱动成功
连接数据库成功
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Out of range value adjusted for column ‘teacherno’ at row 1
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3976)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3914)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2530)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2683)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2491)
at com.mysql.jdbc.StatementImpl.executeUpdateInternal(StatementImpl.java:1552)
at com.mysql.jdbc.StatementImpl.executeLargeUpdate(StatementImpl.java:2607)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1480)
at test.jdbcutil.main(jdbcutil.java:29)
插入失败
不知道为啥就会报错,各位大佬麻烦帮忙看一下。