【问题标题】:JDBC not workingJDBC 不工作
【发布时间】:2017-04-25 01:58:15
【问题描述】:

我的 JDBC 代码根本没有做任何事情。它会打印出“连接到数据库”语句,仅此而已。我已经引用了 JDBC jar 文件,所以我有点困惑为什么我的代码不起作用。我一直在尝试工作的代码如下。

package exampleDatabase;


import java.sql.*; 


public class Main {

        // TODO Auto-generated method stub


        static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";  
           static final String DB_URL = "jdbc:mysql://localhost:81/companylist";

           //  Database credentials
           static final String USER = "root";
           static final String PASS = "";

           public static void main(String[] args) {
           Connection conn = null;
           Statement stmt = null;

           try{
              //STEP 2: Register JDBC driver
              Class.forName("com.mysql.jdbc.Driver");

              //STEP 3: Open a connection
              System.out.println("Connecting to database...");
              conn = DriverManager.getConnection(DB_URL,USER,PASS);

              //STEP 4: Execute a query
              System.out.println("Creating statement...");
              stmt = conn.createStatement();
              String sql;
              sql = "SELECT ID, firstName, lastName,Email FROM Staff";
              ResultSet rs = stmt.executeQuery(sql);

              //STEP 5: Extract data from result set
              while(rs.next()){
                 //Retrieve by column name
                 int ID  = rs.getInt("ID");
                 String firstName = rs.getString("firstName");
                 String lastName = rs.getString("lastName");
                 String Email = rs.getString("Email");

                 //Display values
                 System.out.print("ID: " + ID);
                 System.out.print(", First: " + firstName);
                 System.out.println(", Last: " + lastName);
                 System.out.println(", Last: " + Email);

              }
              //STEP 6: Clean-up environment
              rs.close();
              stmt.close();
              conn.close();
           }catch(SQLException se){
              //Handle errors for JDBC
              se.printStackTrace();
           } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
           }
    }

【问题讨论】:

  • 您确定端口 81 是正确的端口吗? dev.mysql.com/doc/connector-j/en/…
  • 您收到错误消息了吗?数据库端口地址是否正确?你确定是81
  • 您好,我认为这是一个端口问题。请检查此帖子,看看它是否解决了您的问题。 stackoverflow.com/a/26788332/4022947谢谢
  • 我是个十足的白痴。非常感谢您已修复它。
  • 数据库端口地址不是web服务器地址;所以和WAMP无关..改成3306,这是MySQL默认的pot地址。

标签: mysql jdbc


【解决方案1】:

数据库服务器的Port Address 不是Web 服务器的端口。所以,要解决这个问题,你应该将连接 URL 更改为jdbc:mysql://localhost:3306/companylist,因为3306 是 MySQL 数据库服务器的默认端口地址。

【讨论】:

    【解决方案2】:

    jdbc:mysql://localhost:81/companylist 无效。

    由于您使用的是mysql database,因此默认的port 服务器编号为3306

    所以试试这个,jdbc:mysql://localhost:3306/companylist

    它会运行....

    【讨论】:

      猜你喜欢
      • 2011-06-10
      • 2013-07-31
      • 1970-01-01
      • 2013-10-26
      • 1970-01-01
      • 2014-10-15
      • 2020-09-25
      • 1970-01-01
      • 2016-11-16
      相关资源
      最近更新 更多