A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
* TestDemo.java
* 使用java对sql server进行增删改查
* ---------------------------
* 数据库名:test
* 表名:user
* 拥有字段:
* id:int(identity(1,1))
* userName:nvarchar
* password:nvarchar
* ---------------------------
* 部分方法会要求try-catch
* 为了简洁
* 对异常进行了 throws
*/
public class TestDemo {
    /*
     * 使用PreparedStatement对象操作数据库
     * 好处比Statement多太多
     * 安全性,性能...
     *
     * PreparedStatement的参数索引从1开始.
     *
     * 一些常用的方法
     * ResultSet executeQuery();//可以执行sql查询,返回ResultSet对象
     * int executeUpdate();//可以执行“增删改”,返回受影响行数
     * boolean execute();//可以执行任意sql语句,如果结果为Result对象,返回true,反之:false
     */
    private static PreparedStatement ps;

    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //访问数据库的url
        String url = "jdbc:sqlserver://localhost:1433;databasename=test";
        //加载驱动
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        //建立连接
        Connection conn = DriverManager.getConnection(url,"username","password");

        /*insert*/
        ps = conn.prepareStatement("insert into [user] values(?,?)");
        ps.setString(1, "小红");//设置userName为:小红
        ps.setString(2, "小红的密码");//设置password为:小红的密码
        if(ps.executeUpdate()>0){//如果返回的影响行数大于0,则证明增加成功
            System.out.println("增加了一条记录");
        }

        /*update*/
        ps = conn.prepareStatement("update [user] set password=? where userName=?");
        ps.setString(1, "pwd");//设置小红的密码为:pwd
        ps.setString(2, "小红");//设置update条件,userName=小红
        System.out.println("更新了:"+ps.executeUpdate()+" 条记录");

        /*query*/
        ps = conn.prepareStatement("select * from [user]");//查询所有user
        ResultSet rs = ps.executeQuery();
        while(rs.next()){//如果没有下一条记录,返回false,跳出循环
            //System.out.println("姓名:"+rs.getString("username")+",密码:"+rs.getString("password"));
            String username = rs.getString("username");
            String pwd = rs.getString("password");
            System.out.println("姓名:"+username+",密码:"+pwd);
        }

        /*delete*/
        ps = conn.prepareStatement("delete [user]");//这将删除user中的所有记录
        System.out.println("删除了:"+ps.executeUpdate()+" 条记录");

        /*close 释放资源*/
        rs.close();
        ps.close();
        conn.close();
    }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马