MySQL常用语句

来源:互联网 发布:2016淘宝运营教程下载 编辑:程序博客网 时间:2024/06/07 12:14

1.查询

1.1分页查询

String sql = "select * from 表名 limit ?,?";

pstmt = conn.prepareStatement(sql);

pstmt.setInt(1,第一个占位符的值);

pstmt.setInt(2,第二个占位符的值);

ResultSet rs = pstmt.executeQuery();


这里可以扩展为查询所有,然后根据需要进行sql语句的拼接

StringBuffer sb = new StringBuffer("SELECT * from user");

条件判断后,添加必要的拼接:sb.append(" limit ?,?")

pstmt = conn.prepareStatement(sb.toString());

rs = pstmt.executeQuery();

返回的是ResultSet


1.2查询总记录数

String sql = "select count(*) as total from 表名";

这里将查询的记录数(所有记录数,包括NULL空记录,当然这里还可以指定特定的字段名的记录数,这里当该字段名的属性为NULL是,不纳入记录数)赋给了一个变量名为total的变量

在获取ResultSet之后可以利用如下流程取出total的值

if(rs.next()){

return rs.getInt("total");

}else{

return 0;

}


1.3多表关联查询

String sql = "select * from t_user u,t_role r where u.id=r.id and userName=?";

t_user和t_role通过roleId关联(t_user中有一个roleId关联t_role中的id)

之后可以通过rs.getStrig("roleName");来获取userName对应的roleName(这里的roleName是t_role表中的字段名),这样的方式可以获取所需的属性;

再如下面的三表关联查询:

Set<String> permession = new HashSet<String>();
String sql = "select * from t_user u,t_role r, t_permission p where u.roleId=r.id and r.id=p.roleId and userName=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, userName);
ResultSet rs = pstmt.executeQuery();
while(rs.next()){
permession.add(rs.getString("permissionName"));
}

将查询的结果放到HashSet中

2.增

String sql = "insert into 表名(可指定部分属性字段名进行赋值,如:userName,tel,email,qq) values(null, ?, ?)";

pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getUserName());
pstmt.setString(2, user.getTel());
pstmt.setString(3, user.getEmail());
pstmt.setString(4, user.getQq());
pstmt.executeUpdate();

这里的null一般指表中的id字段已经设置为自增



3.删

String sql = "delete from 表名 where id=?";

pstmt = conn.prepareStatement(sql);//一定要在设值之前执行,否则报错
pstmt.setString(1, delId);
pstmt.executeUpdate();



4.改

String sql = "update 表名 set 属性1=?,属性2=?, 属性3=? where id=?";

pstmt = conn.prepareStatement(sql);
pstmt.setString(1, user.getUserName());
pstmt.setString(2, user.getTel());
pstmt.setString(3, user.getEmail());
pstmt.executeUpdate();



原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 华为P9青春版外放音量小怎么办 华为麦芒5的开关键失灵怎么办 小米手机进水黑屏但是有声音怎么办 小米5手机突然黑屏没电怎么办 小米4开不了机怎么办充电没反应 小米手机充电没反应开不了机怎么办 红米note手机开不了机怎么办 红米手机突然黑屏开不了机怎么办 红米2a开不开机怎么办 红米4手开不了机怎么办 红米4a开不了机怎么办 魅族手机拨打电话时黑屏怎么办 金立手机拨打电话时黑屏怎么办 红米手机刷机黑屏了怎么办 酷派手机开机黑屏但能嗡嗡响怎么办 酷派手机忘记锁屏密码怎么办 酷派手机锁屏密码忘了怎么办 酷派手机不停的开机关机怎么办 苹果6手机进水了开不了机怎么办 金立手机突然黑屏开不了机怎么办 丢失手机又忘了ID锁怎么办? 小米2按出电话后黑屏怎么办 华为手机桌面拨号键没有了怎么办 华为荣耀5x黑屏后无法关机怎么办 华为手机突然黑屏电池充不了怎么办 华为手机恢复出厂设置后黑屏怎么办 华为荣耀畅玩6a内存不够怎么办 红米note4玩王者荣耀卡怎么办 华为荣耀5a手机被锁怎么办 华为荣耀v8应用锁忘记蜜码怎么办 阿里巴巴一键代销被投诉受假怎么办 登录小米云服务怎么删除密码怎么办 苹果6云空间连接不上怎么办 买家收到淘宝网交易异常通知怎么办 快递把我秒杀的货弄丢了怎么办 手机淘宝退货物流单号填错了怎么办 买家要求退货退款但是不发货怎么办 多给买家寄包裹不接电话怎么办 给买家发货物流单号错了怎么办 淘宝退货退款快递单号填错了怎么办 淘宝不小心点了延迟收货怎么办