22---数据库编程05(数据库的更新操作)

 

可是使用Connect对象可以得到Statement对象;
通过Statement对象可以操作数据库;
1、 drop table user;----删除表;
 create table user(
  id   int    auto_increment  primary key,
  name  varchar(30)  not null,
  password varchar(32)  not null,
  age   int    not null,
  sex   varchar(2)  default '男',
  birthday  date
  );
2、插入数据:
 import java.sql.DriverManager;
 import java.sql.Connection;
 import java.sql.SQLException;
 import java.sql.Statement;
 public class Demo{
  //定义数据库的驱动程序
  public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
  //定义数据库的连接地址:
  public static final String DBURL="jdbc:mysql://localhost:3306/lid";
  //定义数据库的用户名
  public static final String DBUSER="root";
  //定义数据库的密码
  public static final String DBPASSWORD="123";
  public static void main(String args[]) throws Exception{
   Connection conn=null;
   Statement stmt=null;//数据库操作
   //加载数据库驱动
   Class.forName(DBDRIVER);//创建一个该驱动类的Class对象;
   String sql="insert into user(name,password,age,sex,birthday)"+
     " values('lid','123',20,'男','1988-01-01')";  
   conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);   
   stmt=conn.createStatement();
   stmt.executeUpdate(sql);//执行操作
   stmt.close();//关闭操作
   conn.close();//关闭连接
   }
  }
 以上有个弊端,每添加一条数据就得写一条数据;
 解决如下 :(可以不把变量写死,通过传参的形式是name等去得到传来的参数的值)
  import java.sql.DriverManager;
  import java.sql.Connection;
  import java.sql.SQLException;
  import java.sql.Statement;
  public class Demo{
   //定义数据库的驱动程序
   public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
   //定义数据库的连接地址:
   public static final String DBURL="jdbc:mysql://localhost:3306/lid";
   //定义数据库的用户名
   public static final String DBUSER="root";
   //定义数据库的密码
   public static final String DBPASSWORD="123";
   public static void main(String args[]) throws Exception{
    Connection conn=null;
    Statement stmt=null;//数据库操作
    //加载数据库驱动
    Class.forName(DBDRIVER);//创建一个该驱动类的Class对象;
    String name="yuj";
    String password="456";
    int age=19;
    String sex="女";
    String birthday="1988-09-16";
     
    String sql="insert into user(name,password,age,sex,birthday)"+   " values('"+name+"','"+password+"',"+age+",'"+sex+"','"+birthday+"')";
    conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);   
    stmt=conn.createStatement();
    stmt.executeUpdate(sql);//执行操作
    stmt.close();//关闭操作
    conn.close();//关闭连接
    }
   }

2、更新操作;
  import java.sql.DriverManager;
  import java.sql.Connection;
  import java.sql.SQLException;
  import java.sql.Statement;
  public class Demo{
   //定义数据库的驱动程序
   public static final String DBDRIVER="org.gjt.mm.mysql.Driver";
   //定义数据库的连接地址:
   public static final String DBURL="jdbc:mysql://localhost:3306/lid";
   //定义数据库的用户名
   public static final String DBUSER="root";
   //定义数据库的密码
   public static final String DBPASSWORD="123";
   public static void main(String args[]) throws Exception{
    Connection conn=null;
    Statement stmt=null;//数据库操作
    //加载数据库驱动
    Class.forName(DBDRIVER);//创建一个该驱动类的Class对象;
    int id=2;
    String name="yuj";
    String password="456";
    int age=18;
    String sex="女";
    String birthday="1988-09-16";
     
    String sql="update user set age="+age+" where id="+id;
    conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);   
    stmt=conn.createStatement();
    stmt.executeUpdate(sql);//执行操作
    stmt.close();//关闭操作
    conn.close();//关闭连接
    }
   }

 

 

 

你可能感兴趣的:(22---数据库编程05(数据库的更新操作))