SQL增删改查例子
数据库连接与关闭类
Connectionconn=null;
importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.*;
importjava.sql.SQLException;
publicclassDBConnection{
publicstaticConnectiongetConnection()throws}
publicstaticvoidcloseResource(ResultSetrs,Statement
if(rs!=null){}
if(stmt!=null){
try{try{}
rs.close();rs=null;
e.printStackTrace();
Connectionconn=null;try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");Stringurl
Stringuser="sa";
Stringpassword="123456";
conn=DriverManager.getConnection(url,user,password);//System.out.println("数据库连接成功!");}catch(ClassNotFoundExceptione)
{System.out.println("数据库连接失败:"+e.getMessage());}catch(SQLExceptionex){
System.out.println("SQLException:"+ex.getMessage());System.out.println("SQLState:"+ex.getSQLState());}
returnconn;
SQLException,IllegalAccessException{
PreparedStatementps=null;ResultSetrs=null;Stringsql="";
="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=cwgsj";
stmt,Connectionconn){
}catch(SQLExceptione){}
}}stmt.close();stmt=null;
e.printStackTrace();
}catch(SQLExceptione){
if(conn!=null){
try{
conn.close();conn=null;
System.err.println(ex.getMessage());ex.printStackTrace();
}catch(SQLExceptionex){
System.out.println("-------------------数据库关闭失败!");}
}}查询某单个字段
//根据采购单编号查找采购单是否属于大类型publicStringfindBigFlag(Stringbuyid){
Stringbigflag="";try{}
}catch(Exceptione){
ps=conn.prepareStatement(sql);ps.setString(1,buyid);rs=ps.executeQuery();if(rs.next()){
bigflag=rs.getString(1);
conn=DBConnection.getConnection();
Stringsql="selectisbigfromapplywherebuyid=?";
System.out.println("查找该采购申请是否是大宗采购,ConPurchaseDAO");
}}returnbigflag;
e.printStackTrace();
DBConnection.closeResource(rs,ps,conn);}finally{查询所有(对象集合)
//根据商品大类编号查找小类编号publicListgetGoodstypeBysmall(Stringsmall){
}Listlist=newArrayList();try{}
returnlist;
conn=DBConnection.getConnection();
Stringsql="selectgoodsid,goodsnamefromgoodstypewhereps=conn.prepareStatement(sql);ps.setString(1,small);rs=ps.executeQuery();while(rs.next()){}
e.printStackTrace();
DBConnection.closeResource(rs,ps,conn);
Goodstypegtype=newGoodstype();
gtype.setGoodsid(rs.getString("goodsid"));gtype.setGoodsname(rs.getString("goodsname"));list.add(gtype);
smallgoodsid=?";
}catch(Exceptione){}finally{
//查找流程表flow里级别为id的岗位编号及流程编号publicFlowfindFlowGweiByLevel(intid){
Flowflow=newFlow();
//Listlist=newArrayList();//System.out.println("id"+id);try{
conn=DBConnection.getConnection();
Stringsql="selectflowid,gweiidfromflowwhere//System.out.println(sql);ps=conn.prepareStatement(sql);ps.setInt(1,id);rs=ps.executeQuery();
flow.setFlowid(rs.getString(1));flow.setGweiid(rs.getString(2));
flowtypeid="f002"andlevelflag=?";
if(rs.next()){}
}}catch(Exceptione){}
returnflow;
System.out.println("根据流程标号查找出错");e.printStackTrace();
DBConnection.closeResource(rs,ps,conn);
}finally{
增加
//增加采购申请单publicintaddApply(Applyapply){
}}returnflag;
System.out.println("添加申请单的buyapply.jsp出错");e.printStackTrace();
DBConnection.closeResource(null,ps,conn);
conn=DBConnection.getConnection();Stringsql="insertinto
ps=conn.prepareStatement(sql);ps.setString(1,apply.getBuyid());ps.setString(2,apply.getWriteman());ps.setString(3,apply.getApplytime());ps.setString(4,apply.getIsbig());flag=ps.executeUpdate();
intflag=-1;try{
apply(buyid,writeman,applytime,isbig)values(?,?,?,?)";
}catch(Exceptione){
}finally{
更新
publicintupdateAppreceive(Appreceiveapp,intid){
conn=DBConnection.getConnection();
Stringsql="updateappreceiveset
intflag=-1;try{userid=?,ideas=?,examtime=?,isexam="1"whereid=?";
flag=ps.executeUpdate();ps.setString(2,app.getIdeas());ps.setString(3,app.getExamtime());ps.setInt(4,id);
ps.setString(5,flowid);ps.setString(6,gweiid);
ps=conn.prepareStatement(sql);ps.setString(1,app.getUserid());
//////
}}catch(Exceptione){}
returnflag;
System.out.println("添加采购单的.jsp出错");e.printStackTrace();
DBConnection.closeResource(null,ps,conn);
}finally{
删除
//删除被勾选的采购单申请记录
publicbooleandelPurchase(String[]id){
for(inti=0;i}
}}finally{}
returnflag;
DBConnection.closeResource(rs,ps,conn);
扩展阅读:SQl常用增删改查
SQL常用增删改查语句
增加
现在有一张表,表(Test)里面有三个字段,分别为sno,sname,age。举例用一条增加SQL语句,插入一条数据进库。
语句:Insertinto表名value(‘数据1’,’数据2’,’数据3’)
具体操作:
Insertintotestvalues("test","test","1")
通过上面这条语句,Test表里面就多了一条数据。如下图所示:
上面这个例子,是在每条字段都需要插入的时候为了方便而直接在insertinto后面跟表名。但是也会遇到一些特殊的情况,比如一张表,因为有主外键约束(我这里只有一张表),而我只想插入被约束的字段sno(主键)加上age这个字段,在insertinto的时候就需要指明需要插入的字段,下面举例说明:
语句:Insertinto表名(‘字段名1’,’字段名2’)values(‘数据1’,’数据2’)
具体操作:
insertintotest(sno,age)values("彭宇","21")
这样数据库里面,又多了一条数据,而没有插入任何数据那个字段默认为NULL。如下图所示:
删除
在我们增加数据入库的时候,难免会出现数据录入错误,或者信息过期后不再需要的数据,所以我们要利用删除语句将表里面不需要的数据删除掉。下面举例说明。语句:Deletefrom表名where字段名="需要删除的数据"
具体操作:
deletefromtestwheresno="test"
通过这条SQL语句,Test表主键sno字段里面数据为test的该条数据就已经被删除了。
Ps:一般来说都以主键为条件进行删除,因为主键是不可重复的,我们可以设
想一下,如果没使用主键为删除条件,假设一个公司有两个叫彭宇的人。我使用sname=’彭宇’作为删除条件的话,那么这两个同名同姓人的资料都会被删除掉,所以这是不可取的。
批量删除
当有多条数据需要删除的时候,我们可以使用批量删除语句来实现一次删除多条数据。
语句:
deletefrom表名where字段名in("该字段里面的数据1","该字段里面的数据2",……)
具体操作:
首先,看一下Test表里面有多少条数据,如下图:
现在我想利用一条SQL语句,将前三条数据删除掉。
deletefromtestwheresnoin("test","test2","test3")
通过执行这条SQL语句后,前三条数据已经被我批量删除了。
修改一条已经录入数据库里面的数据如果需要更新、修正,我们就需要用到SQL修改语句。
语句:
Update表名set字段="修改后的数据"where字段="修改条件"
具体操作:
Updatetestsetsno="SQL修改语句"wheresno="test"
修改前后比较,下图所示:
(修改前)(修改后)
查询
上面进行了增加,修改操作后,数据库里面已经存在有数据了,最后我们要利用SQL查询语句将它们查询并显示出来。
全部查询
语句:
Select*from表名
具体操作:
Select*fromtest
执行了上面这句话,那么test表里面存在的数据都会被查询出来,如果我想要单独查询出某个人的数据怎么办?很简单,只需要加上一个关键词where就能够实现了。
单条件查询
语句:
Select*from表名where字段=’需要查询的数据’
具体操作:
Select*fromtestwheresno=’彭宇’
这样我就查询出数据库里面sno字段为彭宇的数据了。多条件查询
多条件查询就是比起单条件查询多了一个and关键词,使用多条件查询,查出来的结构能够更加的精确。
语句:
Select*from表名where字段=’需要查询的数据’and字段=’需要查询的数据’
具体操作:
Select*fromtestwheresno=’彭宇’’21’
andage=
友情提示:本文中关于《SQL增删改查例子》给出的范例仅供您参考拓展思维使用,SQL增删改查例子:该篇文章建议您自主创作。
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。
《SQL增删改查例子》
由互联网用户整理提供,转载分享请保留原作者信息,谢谢!
http://m.bsmz.net/gongwen/747393.html
- 上一篇:SQL增删查改语法
- 下一篇:通信原理-樊昌信-考试知识点总结