fhefh2015
11/29/2017 - 10:50 AM

JDBC:execute方法示例1

JDBC:execute方法示例1

package JDBC;

import java.sql.*;

public class JDBCDemo6 {

    private static String user = "vagrant";
    private static String password = "vagrant";

    public static void main(String[] args) throws Exception {
        try {
            //加载驱动程序
            Class.forName("com.mysql.jdbc.Driver");
            System.out.println("加载驱动成功");
        } catch (ClassNotFoundException e) {
            System.out.println("加载驱动失败");
            e.printStackTrace();
        }

        //JDBC的URL
        String url = "jdbc:mysql://127.0.0.1:33060/mydb";
        Connection connection = null;

        try {
            //调用DriverManager对象的getConnection()方法,获得一个Connection对象
            connection = DriverManager.getConnection(url, user, password);
            Statement state = connection.createStatement();
            System.out.println("连接成功");
            String sql = "DELETE FROM customer WHERE mid='D0006'";

            boolean hasResultSet = state.execute(sql);
            // 如果执行后有ResultSet结果集
            if (hasResultSet)
            {
                // 获取结果集
                ResultSet rs = state.getResultSet();
                // ResultSetMetaData是用于分析结果集的元数据接口
                ResultSetMetaData rsmd = rs.getMetaData();
                int columnCount = rsmd.getColumnCount();
                // 迭代输出ResultSet对象
                while (rs.next())
                {
                    // 依次输出每列的值
                    for (int i = 0 ; i < columnCount ; i++ )
                    {
                        System.out.println(rs.getString(i + 1));
                    }
                    System.out.print("\n");
                }
            }
            else
            {
                System.out.println("该SQL语句影响的记录有" + state.getUpdateCount() + "条");
            }

            state.close();
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}