来自http://blog.sina.com.cn/s/blog_4bea2fb10100f147.html
 
JAVA对Mysql进行连接、插入、修改、删除操作。
 
数据库表单的创建
 
 
mysql> create database shuishengmu;
Query OK, 1 row affected (0.00 sec) 
 
 
 
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| shuishengmu        |
| test               |
+--------------------+
4 rows in set (0.00 sec)
 
mysql> use shuishengmu;
Database changed
 
mysql> create table user(
    -> userid int(8) unsigned not null auto_increment,
    -> username varchar(20) not null default'',
    -> password varchar(40) not null default'',
    -> email varchar(40) not null default'',
    -> primary key(userid)
    -> )
    -> type=myisam;
Query OK, 0 rows affected, 1 warning (0.00 sec)
 
 
******************************************************************************
下面的类是连接、插入、修改、删除操作
package shuishengmu;
 
import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;
 
 
public class ConnectDatabase {
 
    String drivename="com.mysql.jdbc.Driver";
    String url="jdbc:mysql://localhost/shuishengmu";
    String user="root";
    String password="111111";
    String insql;
    String upsql;
    String delsql;
    String sql="select * from user";
    String name;
    Connection conn;
    ResultSet rs=null;
 
    public Connection ConnectMysql(){
                try{
            Class.forName(drivename);
            conn = (Connection) DriverManager.getConnection(url, user, password);
            if (!conn.isClosed()) {
                System.out.println("Succeeded connecting to the Database!");
            } else {
                System.out.println("Falled connecting to the Database!");
            }
        }catch(Exception ex){
            ex.printStackTrace();
        }
         return conn;
    }
 
         public void CutConnection(Connection conn) throws SQLException{
             try{
                if(rs!=null);
                if(conn!=null);
             }catch(Exception e){
             e.printStackTrace();
             }finally{
            rs.close();
            conn.close();
             }
    }
 
 
         class user{//内部类,其字段对应用来存放、提取数据库中的数据
             int userid;
             String username="";
             String password="";
             String email="";
 
             //通过set方法,往类的实例里“存放”数据
             //通过get方法,从类的实例里“获得”数据,然后再通过插入数据库
             public void setId(int userid){
                 this.userid=userid;
             }
             public void setName(String username){
                 this.username=username;
             }
             public void setPassword(String password){
                 this.password=password;
             }
             public void setEmail(String email){
                 this.email=email;
             }
             public Integer getId(){
                 return userid;
             }
             public String getName(){
                 return username;
             }
             public String getPassword(){
                 return password;
             }
             public String getEmail(){
                 return email;
             }
 
         }
         //插入、删除、更新的方法是一样的,不一样的是数据库参数
         public boolean InsertSql(user user){
             try{
 
                  insql="insert into user(userid,username,password,email) values(?,?,?,?)";
                  //上面的方法比下面的方法有优势,一方面是安全性,另一方面我忘记了……
                 //insql="insert into user(userid,username,password,email) values(user.getId,user.getName,user.getPassword,user.getEmail)";
                 PreparedStatement ps=conn.prepareStatement(insql);
                 //.preparedStatement(insql);
                 //PreparedStatement  ps=(PreparedStatement) conn.prepareStatement(insql);
                 ps.setInt(1, user.getId());
                 ps.setString(2, user.getName());
                 ps.setString(3, user.getPassword());
                 ps.setString(4, user.getEmail());
                 int result=ps.executeUpdate();
                 //ps.executeUpdate();无法判断是否已经插入
                 if(result>0)
                     return true;
             }catch(Exception e){
                 e.printStackTrace();
             }
             return false;
         }
 
 
         //与其他操作相比较,查询语句在查询后需要一个查询结果集(ResultSet)来保存查询结果
         public void SelectSql(String sql){
             try{
                 Statement statement=conn.createStatement();
                 rs=statement.executeQuery(sql);
                 while(rs.next()){
                     name=rs.getString("username");
                     System.out.println(rs.getString("userid")+name+rs.getString("email"));
                  }
             }catch(Exception e){
                 e.printStackTrace();
             }
 
         }
 
         public boolean UpdateSql(String upsql){
        try {
            PreparedStatement ps = conn.prepareStatement(upsql);
            int result=ps.executeUpdate();//返回行数或者0
            if(result>0)
                return true;
        } catch (SQLException ex) {
            Logger.getLogger(ConnectDatabase.class.getName()).log(Level.SEVERE, null, ex);
        }
        return false;
         }
 
         public boolean DeletSql(String delsql){
 
        try {
            PreparedStatement ps = conn.prepareStatement(upsql);
            int result=ps.executeUpdate(delsql);
            if(result>0)
                return true;
        } catch (SQLException ex) {
            Logger.getLogger(ConnectDatabase.class.getName()).log(Level.SEVERE, null, ex);
        }
        return false;
         }
 
 
  }
 
*************************************************************************
用来测试上面方法的类:
 
package shuishengmu;
 
import java.sql.SQLException;
import shuishengmu.ConnectDatabase.user;
 
 
public class Main {
 
   
         public static void main(String args[]) throws SQLException{
         ConnectDatabase cd=new ConnectDatabase();
         user user=cd.new user();
         cd.ConnectMysql();
         user.setId(14);//每次测试运行都要改变该数字
         user.setName("zhangsan");
         user.setPassword("we23");
         user.setEmail("udjdj@125.com");
         cd.upsql="update user set username='we' where userid=5";
         cd.delsql="delete from user where userid=1";
         //cd.InsertSql(user,"kkk");
         cd.InsertSql(user);
         cd.DeletSql(cd.delsql);
         cd.UpdateSql(cd.upsql);
         cd.SelectSql(cd.sql);
         cd.CutConnection(cd.conn);
         }
 
}

JAVA对MYSQL进行连接、插入、修改、删除操作相关推荐

  1. 数据库系统实践 IV 查询插入修改删除操作

    知识 CASE函数 是一种多分支的函数,可以根据条件列表的值返回多个可能的结果表达式中的一个. 可用在任何允许使用表达式的地方,但不能单独作为一个语句执行. 分为: 简单CASE函数 搜索CASE函数 ...

  2. mysql利用触发器删除数据库_[数据库]mysql 触发器的创建 修改 删除

    [数据库]mysql 触发器的创建 修改 删除 0 2015-12-16 23:00:04 //做一个简单的练习,创建一个简单的触发器 完成添加文章的时候,自动加上时间,默认作者 为 '日记本的回忆' ...

  3. 红黑树及其插入、删除操作

    在二叉搜索树中,基本操作如结点的插入.删除.查找的性能上界都得不到保证,原因在于二叉搜索树的构造依赖于其结点值的插入顺序,最坏情况下二叉搜索树会退化为单链表(如下图所示).因此我们需要对二叉搜索树做出 ...

  4. oracle 用户表数目,表大小,视图数目及表空间等查询增加修改删除操作

    oracle 用户表数目,表大小,视图数目及表空间等查询增加修改删除操作 查看当前用户的缺省表空间 SQL>select username,default_tablespace fromuser ...

  5. 本科课程【数据结构与算法】实验1——线性表的顺序表示及插入、删除操作(C++实现)

    大家好,我是[1+1=王], 热爱java的计算机(人工智能)渣硕研究生在读. 如果你也对java.人工智能等技术感兴趣,欢迎关注,抱团交流进大厂!!! Good better best, never ...

  6. 多表(三个表)插入与删除操作

    业务需求: 新增和删除分类信息,以category为主表,category_detail和image为副表,在不额外编写Sql.mapper.xml文件的前提下,利用mybatis-plus中的内置函 ...

  7. 顺序表的插入和删除操作

    C语言线性表的插入和删除操作 C语言数据结构的学习之线性表的插入与删除操作 C语言线性表的插入和删除操作 一.插入操作 插入操作的时间复杂度分析: 二.删除操作 删除操作的时间复杂度分析: 查找操作 ...

  8. 二叉平衡树的插入和删除操作

    [转载]二叉平衡树的插入和删除操作 1.      二叉平衡树 二叉排序树查找.插入和删除操作的时间复杂度和树的深度n有关.构建树时,当先后插入的结点按关键字有序时,二叉排序树退化为单枝树,平均查找长 ...

  9. asp.net 对xml文件的读写,添加,修改,删除操作

    asp.net 对xml文件的读写,添加,修改,删除操作 下面有代码调试正确 using System; using System.Collections; using System.Componen ...

最新文章

  1. 如何判断飞机的年限_技术流带你鉴定前风挡玻璃更换,不再使用日期判断!
  2. less14 颜色函数2
  3. 继承复习-发均分红包案例
  4. zk的数据目录:`version-2`
  5. 手把手教你拦截Linux系统调用
  6. mysql left join 索引失效_MySQL索引列上做操作导致索引失效案例分析
  7. tensorflow http调用_《TensorFlow 内核剖析》笔记——系统架构
  8. 计算机常见故障报警,常见听报警志与故障
  9. leetcode-全排列详解(回溯算法)
  10. 【LeetCode】10. Regular Expression Matching
  11. 服务器音频文件缓存,音频文件如何缓存到本地,和播放缓存到本地的音频文件...
  12. Koo叔说Shader-Unity中的Shader
  13. 学生党白嫖服务器-不会吧不会吧,你还在买学生机吗?
  14. 好分数班级等级C_2020高中分数线(广州|深圳|天津|广州|南宁|泉州|龙岩|武汉|沈阳|青岛|汉中|长春|四平|北京等)...
  15. 《美团机器学习实践》学习笔记:机器学习中的模型评价指标(二)——回归模型评估
  16. declare 简单用法
  17. 如何魔改Xilinx Vivado 的MIG IP核
  18. linux aria2 参数,aria2常用命令
  19. 如何使用WordPress建立亚马逊会员商店
  20. springboot启动失败的原因及其解决方法

热门文章

  1. Python Dictionary 字典
  2. ARP的***与防护
  3. 判断一个字符串的字符是不是唯一
  4. 问题六十八:着色模型(shading model)(1)——反射模型(reflection model)(1)——概述
  5. Kafka概念及组件介绍
  6. C++第五章课后习题16-字符串按逆序输出
  7. 大数据分析需要掌握哪些技术
  8. 新手必看,物联网卡常见的三大问题!
  9. 链式编程在Java 中的应用
  10. [运维笔记] PowerShell (模块).模块清单