Mysql database Exception

后端 未结 2 1956
梦毁少年i
梦毁少年i 2021-01-15 19:30

Exception in thread \"main\" java.lang.Error: Unresolved compilation problem: Type mismatch: cannot convert from java.sql.Statement to com.mysql.jdbc.Statement<

相关标签:
2条回答
  • 2021-01-15 20:02

    Wrong classes

    import com.mysql.jdbc.Connection;
    import com.mysql.jdbc.Statement;
    

    should be

    import java.sql.Connection;
    import java.sql.Statement;
    

    In fact, java decouples everything from a specific database engine. One never should need an import of MySQL (or ProgressSQL or ...) classes.

    To have those classes available at run-time, the first thing after the try, before getting the connection would be:

    Class.forName("com.mysql.jdbc.Driver");
    

    This technique would allow reading all strings from a configuration file, and writing database independent code.


    Missing: conn = ...

    conn = DriverManager.getConnection(CONN_STR, userName, userpwd);
    
    0 讨论(0)
  • 2021-01-15 20:11
    package com.example.demo;
    
    import java.sql.*;
    
    
    public class DBConnect
    {
    private static final String userName = "root";
    private static final String userpwd = "sverma";
    private static final String CONN_STR = "jdbc:mysql://localhost:3306/phpweb_db";
    
    public static void main(String[] args) throws SQLException
    {
    
        Connection conn;
        Statement st;
        ResultSet rs;
    
        try
        {
            Class.forName("com.mysql.jdbc.Driver");
            DriverManager.getConnection(CONN_STR, userName, userpwd);
            st=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
            rs = st.executeQuery("select * from user");
            rs.last();
            System.out.println("No of rows: " + rs.getRow());
    
            // System.out.println("Connected Successfully...");
        }
        catch (SQLException e)
        {
            System.err.println(e);
    
        }
        finally
        {
            if (rs != null)
            {
                rs.close();
            }
            if (st != null)
            {
                st.close();
            }
            if (conn != null)
            {
                conn.close();
            }
        }
    }
    
    0 讨论(0)
提交回复
热议问题