我已经正确创建了dsn并且具有清晰简单的代码,但我最终得到了这个错误。表结构与程序
相同 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class Insert {
public static void main(String[] args) {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbc");
Connection con=DriverManager.getConnection("jdbc:odbc:mysqldsn","root","filimon");
Statement st=con.createStatement();
int i=st.executeUpdate("insert into emp values(3,'cat')");
if (i>=1) {
System.out.println("inserted successfully");
} else {
System.out.println("failed");
}
st.close();
con.close();
} catch (Exception e) {
System.err.println(e);
}
}
}
我得到java.sql.SQLException:[MySQL] [ODBC 5.3(a)驱动程序] [mysqld-5.7.13-log]没有选择数据库
答案 0 :(得分:0)
错误表示您尚未选择数据库。但是,在ODBC配置中,数据库的选择将会在某处。
所以你可以做两件事:要么修复你的ODBC配置来选择数据库,要么(更好的选择)你可以停止使用ODBC并使用MySQL JDBC驱动程序。
答案 1 :(得分:0)
使用以下驱动程序
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection(
"jdbc:mysql://localhost:3306/dbname","uname","passwd");
如果您仍然使用ODBC,请向我显示您的DSN配置。