从sql命令行创建数据库并在Java jdbc代码

时间:2016-07-26 13:02:59

标签: java mysql jdbc

我想使用sql命令行sql command line image中的纯sql代码创建我的数据库,并希望从java代码(jdbc)连接到数据库。 但在这样做时我遇到了问题 - 这就是我所尝试的: 我已经设置了驱动程序的路径 - [“ mysql-connector-java-5.1.39-bin ” - 一个jar文件] - 在路径变量中,以及在互联网上的一些建议中,我将此jar文件添加到[ C:\ Program Files \ Java \ jdk1.8.0 \ jre \ bin ]文件夹中。但是当我从命令提示符运行我的程序时,它会显示一个异常 - 图像 - message from command prompt。我也从sql命令提示符创建了数据库用户。 这是我的java代码 -

  import java.sql.*;

  public class JDBCDemo
{
  public static void main(String... args)
 {
   try(Connection conn = DriverManager.getConnection(
    "jdbc:mysql//localhost:3306/studentdb?useSSL=false","amir","amir5");
    // step 2 . allocate a statement object in the connection 

    Statement stmt = conn.createStatement();
    )   {
       //step 3. execute  a SQL select query, the query result 
         String strSelect = "select * from student;";
         System.out.println("The sql query is "+ strSelect);
         System.out.println();
         ResultSet rset = stmt.executeQuery(strSelect);
         System.out.println("the records are selected");
         int rowCount =0;
         while(rset.next())
         {
             String name = rset.getString("name");
             String roll = rset.getString("roll_num");
             int id = rset.getInt("id");
             System.out.println(name+", "+roll+", "+id);
             ++rowCount;
         }
         System.out.println(rowCount);
        }
         catch(SQLException e)
         {
             e.printStackTrace();
         } 

   }    
}

我该怎样摆脱这个问题?

4 个答案:

答案 0 :(得分:1)

不要在这里和那里看!只需设置你的mysql命令行并安装netbeans。 netbeans有内置的驱动程序。在mysql命令行中创建一个数据库,然后在netbeans中创建一个项目,双击库文件夹并选择添加库,弹出一个屏幕,向下滚动它并选择mysql odbc驱动程序,你就完成了!编写代码并执行查询。

答案 1 :(得分:0)

您应该使用Class.forName("com.mysql.jdbc.Driver");

参考教程here

注意:下载mysql-connector-java-5.1.23-bin.jar here。该教程中没有提到它。然后设置下载它的类路径。

import java.sql.*;  
class MysqlCon{  
public static void main(String args[]){  
try{  
Class.forName("com.mysql.jdbc.Driver");  

Connection con=DriverManager.getConnection(  
"jdbc:mysql://localhost:3306/sonoo","root","root");  

//here sonoo is database name, root is username and password  

Statement stmt=con.createStatement();  

ResultSet rs=stmt.executeQuery("select * from emp");  

while(rs.next())  
System.out.println(rs.getInt(1)+"  "+rs.getString(2)+"  "+rs.getString(3));  

con.close();  

}catch(Exception e){ System.out.println(e);}  

}  
}  

答案 2 :(得分:0)

给出错误消息

java.sql.SQLException: No suitable driver found for jdbc:mysql//localhost:3306/studentdb?useSSL=false

你的连接字符串在" mysql"之后缺少冒号。它应该是

jdbc:mysql://localhost ...

答案 3 :(得分:0)

Connection conn = DriverManager.getConnection(“jdbc:mysql:// localhost:3306 / studentdb”,“amir”,“amir5”);

使用此行它将完美地运作