1.查询数据

先救从简单的来吧,之前我们实现了将数据库表格信息读取到一个List集合中,数据库的查询,实

际上就是对这个集合的查询;

 public class Show {
public static void main(String[] args) {
//获取之前的数据集合
List<User> list = Do.userlist();
//foreach遍历这个集合
for (User user : list) {
//查询条件,查找user为tom的用户名和密码
if(user.user.equals("tom")) {
//这里要用equals()方法,不能用==,切记
System.out.println("用户名:"+user.user+";密码:"+user.password);
}
}
}
}

控制台打印如下:

 用户名:tom;密码:243523563

其实我们也可以将这个方法封装起来,并传入一个字符串参数,从而实现对用户信息的输出,在这里不做深究。

2.增加数据

在实现这个功能之前我们要事先了解一下,SQL语句是如何实现数据的添加的;

先来看一下表有哪些数据项

我们可以看到,这个表中有4个属性,由于设置的时候,设置成了必填,所以,添加的时候也得全填

SQL语句:

INSERT INTO table1(id,user,password,age) VALUES ('5','cindy','35675467','23') ;

 public class Insert {
// 利用含参构造器新建一个User对象,传入数据
static User newuser = new User(5, "cindy", "123452", 23);
// 定义含参方法将这个数据(对象)添加到表格中
public static void add(User newuser) {
try {
// 获取数据库的连接
Connection conn = MySQL.getconnect();
// 设置SQL规则,数据由于还不知道先用?代替
String sql = "INSERT INTO table1(id,user,password,age) VALUES (?,?,?,?)";
// 预处理sql语句
PreparedStatement presta = conn.prepareStatement(sql);
// 设置sql语句中的values值
presta.setInt(1, newuser.id);
presta.setString(2, newuser.user);
presta.setString(3, newuser.password);
presta.setInt(4, newuser.age);
// 执行SQL语句,实现数据添加
presta.execute();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// 执行add(newuser)方法
add(newuser);
}
}

我们看看结果:

添加成功,Bingo!

3.删除数据

其实增删改查,实际上就是对sql语句的运用,这里的删除也不例外

 public static void delete(Integer id) {
try {
// 获取数据库的连接
Connection conn = MySQL.getconnect();
// 设置SQL规则,数据由于还不知道先用?代替
//String sql = "INSERT INTO table1(id,user,password,age) VALUES (?,?,?,?)";
//String sql = "Update table1 set user=?,password=?,age=? where id=?";
String sql = "delete from table1 where id=?";
// 预处理sql语句
PreparedStatement presta = conn.prepareStatement(sql);
// 设置sql语句中的values值
presta.setInt(1,id);
// 执行SQL语句,实现数据添加
presta.execute();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// 执行add(newuser)方法
delete(2);
}

delete()方法传入了一个参数id,用于删除指定id的数据,如下:

id为2的信息被删除了,beautiful!

4.更新数据

 public class Insert {
// 利用含参构造器新建一个User对象,传入数据
static User newuser = new User(5, "Cindy", "1234567890", 23);
// 定义含参方法将这个数据(对象)添加到表格中
public static void update(User newuser) {
try {
// 获取数据库的连接
Connection conn = MySQL.getconnect();
// 设置SQL规则,数据由于还不知道先用?代替
//String sql = "INSERT INTO table1(id,user,password,age) VALUES (?,?,?,?)";
String sql = "Update table1 set user=?,password=?,age=? where id=?";
// 预处理sql语句
PreparedStatement presta = conn.prepareStatement(sql);
// 设置sql语句中的values值
presta.setString(1, newuser.user);
presta.setString(2, newuser.password);
presta.setInt(3, newuser.age);
presta.setInt(4, newuser.id);
// 执行SQL语句,实现数据添加
presta.execute();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// 执行add(newuser)方法
update(newuser);
}
}

这里是根据ID号来更新信息,结果如下

姓名、密码被成功更改,nice!

java数据库(MySQL)之增删改查的更多相关文章

  1. java对mysql的增删改查

    -----连接数据库 package connectdb;import java.sql.*;class Dbcon { // 此处连接数据库,独立开一个类,以后操作数据库的每次连接就不用写这么多 p ...

  2. java连接mysql以及增删改查操作

    java连接数据库的代码基本是固定的,步骤过程觉得繁琐些,代码记起来对我来说是闹挺.直接上代码: (温馨提醒:你的项目提前导入连接数据库的jar包才有的以下操作 ) class DBConnectio ...

  3. java操作mysql的增删改查

    prepareStatement(sql)是statement的子类,比statement好用. 如果数据库中定义的是int值,那么sql语句中要把int单独提出来.如".....value ...

  4. JDBC之Java连接mysql实现增删改查

    使用软件:mysql.eclipse 链接步骤: 1.注册驱动 2.创建一个连接对象 3.写sql语句 4.执行sql语句并返回一个结果或者结果集 5.关闭链接(一般就是connection.stat ...

  5. Java 数据库操作oracle增删改查,通用封装基于hashmap

    pt1:首先安装oracle连接驱动 下载地址:https://pan.baidu.com/s/1jW_ofgU4eJmAn7Y2J5B46A  密码:epkz 1.将ojdbc6.jar导入项目中 ...

  6. Android(java)学习笔记245:ContentProvider使用(银行数据库创建和增删改查的案例)

    1. Android的四大组件: (1)Activity  用户交互的UI界面 (2)Service  后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...

  7. Vc数据库编程基础MySql数据库的表增删改查数据

    Vc数据库编程基础MySql数据库的表增删改查数据 一丶表操作命令 1.查看表中所有数据 select * from 表名 2.为表中所有的字段添加数据 insert into 表名( 字段1,字段2 ...

  8. Android(java)学习笔记189:ContentProvider使用(银行数据库创建和增删改查的案例)

    1. Android的四大组件: (1)Activity  用户交互的UI界面 (2)Service  后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...

  9. Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)

    day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库:    简称:DataBase ---->DB    数据库即存放数据的仓库, ...

  10. Java实现mongodb原生增删改查语句

    Java实现mongodb原生增删改查语句 2018-03-16 自动化测试时,需校验数据库数据,为了快速自动化,在代码中用原生增删改查语句操作mongodb 结构 代码 0 pom.xml < ...

随机推荐

  1. 关于React Native 火热的话题,从入门到原理

    本文授权转载,作者:bestswifter(简书) React Native 是最近非常火的一个话题,介绍如何利用 React Native 进行开发的文章和书籍多如牛毛,但面向入门水平并介绍它工作原 ...

  2. CodePen最佳实例分享

    原文地址: Chris Coyier's Favorite CodePen Demos 原文日期: 2013年8月13日 翻译日期: 2013年8月21日 CodePen: Build, Explor ...

  3. Universal-Image-Loader完全解析--从源代码分析Universal-Image-Loader中的线程池

    一般来讲一个网络访问就需要App创建一个线程来执行,但是这也导致了当网络访问比较多的情况下,线程的数目可能积聚增多,虽然Android系统理论上说可以创建无数个线程,但是某一时间段,线程数的急剧增加可 ...

  4. (九)UIScrollView和PageControl的分页

    涉及到内容的滚动与拖拽,使用UIScrllView. 对于滚动的多张图片,由于超出屏幕,应该使用代码添加代码. 添加的细节是:图片的宽高即为滚动视图的宽高,图片的y=0,x=图片的序号乘以图片的宽度. ...

  5. libevent之event_base

    event_base是libevent的事务处理框架,负责事件注册.删除等,属于Reactor模式中的Reactor. event_base结构体 event_base结构体定义于<event_ ...

  6. Android使用Canvas实现跑马灯

    网上的很多的教程都是通过更改TextView的属性进行跑马灯的设计.这样做有很多的缺点: 1.如果TextView没有获取焦点,那么跑马灯的效果无法实现. 2.如果文本长度小于TextView的宽度, ...

  7. 算法精解:最小二乘法C实现

    计量经济学研究的直接目的是确定总体回归函数Yi=B1+B2Xi+ui,然而能够得到的只是来自总体的若干样本的观测值,要用样本信息建立的样本回归函数尽可能"接近"地去估计总体回归函数 ...

  8. android 屏幕适配,hdpi,xhdpi,xxhdpi理解,常见出图

    屏幕适配 首先理解下各个尺寸单位代表的意思 尺寸含义 px: 像素 dip: Density-independent pixel 独立像素密度 dpi: dot per inch 分辨率 ppi: p ...

  9. Linux下简易线程池

    线程池简介 线程池是可以用来在后台执行多个任务的线程集合. 这使主线程可以自由地异步执行其他任务.线程池通常用于服务器应用程序. 每个传入请求都将分配给线程池中的一个线程,因此可以异步处理请求,而不会 ...

  10. SQL Queries and Multi-Org Architecture in Release 12

    In this Document   Abstract   History   Details   Previous Releases   Release 12   Multi-Org Session ...