con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","User1234"); con 是NULL 但是数据库名,用户名,密码都是对的啊不知道哪错了
检查你的驱动jar添加没有,严重怀疑你的驱动jar没有添加。
没添加驱动jar的话应该报ClassNotFound吧?楼主最好还是debug一下吧
还是不行 con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","User1234");就是这句con是NULL,test(数据库名),root(用户名),User1234(密码)对的啊。到底哪的问题???????????
数据库的链接可以直接写到静态块里面去,后面直接使用conn就可以了。
按你的错误,是 conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","User1234");出错的,你断点下,看你的数据库名称,用户名和密码都正确否,看看conn能否正常获取到。
下面是我调的代码格式,供楼主参考public class Test {
static Connection conn;
static Statement st;
static {
try{
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","User1234");
}catch(Exception e){
System.out.println("数据库连接失败" + e.getMessage());
}
}
public static void main(String[] args){
insert();
} public static void insert(){
try{
String sql = "INSERT INTO tablename1(id,name,age)"+"values('02','tom',30)";
st = (Statement)conn.createStatement();
int count = st.executeUpdate(sql);
System.out.println("向表中插入" + count + "条数据");
st.close();
conn.close();
}catch(SQLException e){
System.out.println("插入数据失败" +e.getMessage());
}
}
}
数据库test,用户名是root,密码是User1234 对的啊,不知道哪错了,我换了你这么写的,还是不对
con 是NULL 但是数据库名,用户名,密码都是对的啊不知道哪错了
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","User1234");就是这句con是NULL,test(数据库名),root(用户名),User1234(密码)对的啊。到底哪的问题???????????
这里不是有链接吗?自己下载吧。
楼主要慢慢锻炼自己分析问题,解决问题的能力。
mysql驱动不是非常难找的东西,五楼的链接中有驱动的地址,建议楼主自己下载吧。
这个异常是你没有导入Mysql 的驱动包。去下一个Mysql的jar包,
是Class.forName("com.mysql.jdbc.Driver")抱的异常,
因为连接用了反射机制,反射com.mysql.jdbc.Driver这个类。
你没有导入Mysql的jar包,所以forName找不到这个类,就会抛ClassNotFoundException这个异常