import java.sql.Connection;
import java.sql.Statement;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
import javax.swing.JFrame;
import com.sun.org.apache.xerces.internal.impl.dv.DVFactoryException;
class Lianjie{
public static final String DBurl = "jdbc:mysql//localhost:3306/mldn";
public static final String Dri = "org.gjt.mm.mysql.Driver";
public static final String User = "root";
public static final String Password = "root";
public Lianjie() throws SQLException{
try {
Class.forName(Dri);
} catch (ClassNotFoundException e) {
System.out.println("出现错误"+e);
}
Connection conn=null;
Statement state=null;
conn= DriverManager.getConnection(DBurl, User, Password);
state=conn.createStatement();
String sql="insert into user(id,name)values(3,3)";
state.executeUpdate(sql);
conn.close();
}
}
public class Connectdemo1 {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
new Lianjie();
}
}
运行以上代码编译器得到以下提示:
Exception in thread "main" java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Shizhanjindian_17.Lianjie.<init>(Connectdemo1.java:27)
at Shizhanjindian_17.Connectdemo1.main(Connectdemo1.java:37)
第一个提示没有合适的驱动。
去掉以下代码
Connection conn=null;
Statement state=null;
conn= DriverManager.getConnection(DBurl, User, Password);
state=conn.createStatement();
String sql="insert into user(id,name)values(3,3)";
state.executeUpdate(sql);
conn.close();
经测试 编译器得到结果没有任何错误 驱动加载通过。
提示 驱动 报错 求解。。。
并且
at Shizhanjindian_17.Lianjie.<init>(Connectdemo1.java:27)---->
conn= DriverManager.getConnection(DBurl, User, Password);
at Shizhanjindian_17.Connectdemo1.main(Connectdemo1.java:37)----->
new Lianjie();
看不懂存在的问题。麻烦各位大哥帮忙解释一下。十分感谢
conn.close();
这一坨咋不包在trycache finally里。。。。。。。。。。。。
Connectionconn=null;
Statementstate=null;
try{
Class.forName(Dri);
conn=DriverManager.getConnection(DBurl,User,Password);
state=conn.createStatement();
Stringsql="insertintouser(id,name)values(3,3)";
state.executeUpdate(sql);
conn.close();
xx.close();
xx.close();
}
}
}
这样还靠点谱
刚才没看见还有个throws····回复 @空清城:也行啊,关键是你获得conn时会出异常,你没处理大哥。我将程序中会出现的异常在主方法抛出不处理不行吗?另外 Dri="org.gjt.mm.mysql.Driver";这是啥????你写错了回复 @softsword:这个写法也是可以的。我咋记得是com.mysql.jdbcDriver这个是没有错的。这个是驱动的一个什么东西的、问题追加:
一下代码是可以运行的可以有结果;但是本人看不出不同。
麻烦看出来的人讲解一下
importjava.sql.Connection;
下面是对各种数据库的驱动类名和URL格式的汇总。如表3所示。其中hostip代表ip地址,dbname代表数据库名。
数据库
驱动类名
URL格式
Oracle
oracle.jdbc.driver.OracleDriver
jdbc:oracle:thin:@hostip:1521:dbname
Sybase
com.sybase.jdbc2.jdbc.SybDriver
jdbc:sybase:Tds:hostip:4100/dbname
Mysql
com.mysql.jdbc.Driver
jdbc:mysql://hostip:3306/dbname?useUnicode=true&characterEncoding=GBK
SQLServer2000
com.microsoft.jdbc.sqlserver.SQLServerDriver
jdbc:microsoft:sqlserver://hostip:1433;DatabaseName=dbname
SQLServer2005
com.microsoft.sqlserver.jdbc.SQLServerDriver
jdbc:sqlserver://hostip:1433;DatabaseName=dbname
SQLServer7.0
net.sourceforge.jtds.jdbc.Driver
jdbc:jtds:sqlserver://hostip:1433/dbname
DB2
com.ibm.db2.jcc.DB2Driver
jdbc:db2://hostip:50000/dbname
Informix
com.informix.jdbc.IfxDriver
jdbc:informix-sqli://hostip:port/dbname:informixserver=<dbservername>
谢谢了。以后不用愁了。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。