Java - Getting Data from MySQL database

前端 未结 6 484
南笙
南笙 2021-02-04 15:31

I\'ve connected to a MySQL database, which contains four fields (the first of which being an ID, the latter ones each containing varchar strings).

I am trying to get the

6条回答
  •  粉色の甜心
    2021-02-04 16:13

    Here you go :

    Class.forName("com.mysql.jdbc.Driver").newInstance();
    Connection con = DriverManager.getConnection("jdbc:mysql://localhost/t", "", "");
    
    Statement st = con.createStatement();
    String sql = ("SELECT * FROM posts ORDER BY id DESC LIMIT 1;");
    ResultSet rs = st.executeQuery(sql);
    if(rs.next()) { 
     int id = rs.getInt("first_column_name"); 
     String str1 = rs.getString("second_column_name");
    }
    
    con.close();
    

    In rs.getInt or rs.getString you can pass column_id starting from 1, but i prefer to pass column_name as its more informative as you don't have to look at database table for which index is what column.

    UPDATE : rs.next

    boolean next() throws SQLException

    Moves the cursor froward one row from its current position. A ResultSet cursor is initially positioned before the first row; the first call to the method next makes the first row the current row; the second call makes the second row the current row, and so on.

    When a call to the next method returns false, the cursor is positioned after the last row. Any invocation of a ResultSet method which requires a current row will result in a SQLException being thrown. If the result set type is TYPE_FORWARD_ONLY, it is vendor specified whether their JDBC driver implementation will return false or throw an SQLException on a subsequent call to next.

    If an input stream is open for the current row, a call to the method next will implicitly close it. A ResultSet object's warning chain is cleared when a new row is read.

    Returns: true if the new current row is valid; false if there are no more rows Throws: SQLException - if a database access error occurs or this method is called on a closed result set

    reference

提交回复
热议问题