我创建了一个mydb数据库,里面有三个表,现在用jdbc连接,出现异常
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'mydb'
Connection conn = DriverManager.getConnection(url, user, password);这一句出现异常了,说找不到数据库
我是第一次用mysql,以前是连接的sql2008,不知道mysql要什么权限么,比如sql2008要设置混合模式
try {
Class.forName("com.mysql.jdbc.Driver");  
System.out.println("数据库驱动程序注册成功!"); 
String url = "jdbc:mysql://localhost:3306/mydb";
String user = "root"; 
String password = "****"; 
Connection conn = DriverManager.getConnection(url, user, password); 
System.out.println("数据库连接成功"); 
String sql = "select password from Manager where name=?"; 
//准备从数据库选择密码                                                            
PreparedStatement prepare = conn.prepareCall(sql);//设定数据库查寻条件
         prepare.clearParameters();
         prepare.setString(1,name);//设定参数
         ResultSet r = prepare.executeQuery();//执行数据库查寻
         if(r.next()){//以下比较输入的号码于密码是否相同
          String pass = r.getString("password").trim();
          if(passWord.regionMatches(0,pass,0,pass.length())){ 
                  System.out.println("登录成功!");
                  ts.setVisible(false);
                  new Manage();
          }
          //否者告诉客户失败
          else System.out.println("登录失败!");
          r.close();}
         else{ 
          System.out.println("false");
          r.close();
          conn.close();
          }
            } catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

解决方案 »

  1.   

    你的mysql没有数据库mydb啊。
    使用命令行mysql -u root -p <password>进入mysql命令行,然后create database mydb
    退出就可以使用jdbc连mydb了。
    或者你将mydb改为test试试。因为mysql自带一个test数据库。
      

  2.   

    哦,我试试,我用的是带界面的,创建了一个mydb数据库,退出时保存到我的文档了,现在再用带界面的程序打开那个数据库mydb,但是连接不上,现在用命令行,登录了,然后 use mydb,出现Unknown database 'mydb',这是怎么回事呢
      

  3.   

    连接test能成功,就是数据库的问题了,但是我已经创建了mydb,而且已经建立了表了啊,这个地方不知道怎么回事啊
      

  4.   

    我的数据库在本机啊,对了,数据库mydb是我用MySQL Workbench创建的,保存的后缀是*.mwb
      

  5.   

    建议你用 mysql.exe 命令行工具检查一下。
      

  6.   


    看了下,没有我得数据库mydb,不知道用MySQL workben创建的数据库怎样保存到mysql中呢想问一下,现在公司里,mysql都是用什么界面工具的啊?
      

  7.   


    sql-front.exe   or  mysql-gui-tools-5.0-r12-win32.msi
      

  8.   

    一般都用Oracle,界面工具多用navicat,该工具支持MySQL和Oracle