数据库操作

1.增加(插入)insert

在插入数据库数据时,需要从前端获取输入的数据,

主要的语句是用户注册:insert into 表的名字(username,password)value(?,?);

                                ps.setString(1, user.getUsername());//传值给第一个问号
                                ps.setString(2, user.getPassword());//传值给第二个问号

                                  ps.executeUpdate();

不需要有返回值;

2.删除delect

  在删除是一般id是唯一的,所以要根据id删除

     主要的语句是:delect *from 表的名字  where id=?;

                            ps.setInt(1,id);

                            ps.excuteUpdate();

3.改(一般改的是用户的密码)update

    在改是根据用户的ID,根据id和用户输入的新密码

    主要的语句是:update 表的名字 set password=? where id=?;

                        ps.setString(1,user.getPassword());

                         ps.setInt(2,user.getId());

                           ps.executeUpdate();

4.查找(select):查找需要返回值

    在查找的时候可以根据用户输入的名字

    主要的语句是:select * form 表的名字 where username=?;

                          ps.setString(1,user.getUsername());

                           rs = ps.executeQuery();

5.多表联合查询   select * from  t_user,  mail where   receiver= username

联合查询效率较高.以下例子来说明联合查询的好处

t1表结构(用户名,密码)    userid int         username   varchar(20)     password       varchar(20)

                                                  1                    jack                           jackpwd

                                                   2                    owen                        owenpwd

t3表结构(用户积分,等级)    userid int         jf   int                   dj           int

                                                1                     20                       3

                                                 3                     50                       6

第一:内联(inner join)

如果想把用户信息,积分,等级都列出来.那么一般会这样写

select * from t1 ,t3 where t1.userid = t3.userid   其实这样的结果等同于select * from t1 inner join t3 on t1.userid=t3.userid

就是把两个表中都存在userid的行拼成一行.这是内联.但后者的效率会比前者高很多.建议用后者的写法.

运行结果:userid    username password     userid   jf    dj

                   1             jack        jacjpwd      1          20   3

第二:左联(left outer join)显示左表中的所有行

select * from t1 left outer join t3 on t1.userid=t3.userid

运行结果:userid    username password     userid   jf     dj

      1        jack          jackpwd       1         20   3

                          2       owen         owenpwd     NULL NULL   NULL

第三:右联(right outer join)显示右表中的所有行

select * from t1 right outer join t3 on t1.userid=t3.userid

运行结果:userid    username password     userid   jf     dj

      1        jack          jackpwd       1         20   3

                         Null    Null           Null              3        50     6

第四:全联(full outer join)显示两边表中所有行

select * from t1 full outer join t3 on t1.userid=t3.userid

运行结果:userid    username password     userid   jf     dj

      1        jack          jackpwd       1         20   3

                          2       owen         owenpwd     NULL NULL   NULL

                         Null    Null           Null              3        50     6

                    

 

你可能感兴趣的:(数据库操作)