社区
应用实例
帖子详情
请问我用update 1234 set number=number+'100'?????????????
4128
2003-01-14 09:25:37
请问我用update 1234 set number=number+'100'后,执行后,我如何将它改为没有执行这第update语句?数据库中的number改为加上“100”。其中number为字符型。。。急急急急
...全文
44
2
打赏
收藏
请问我用update 1234 set number=number+'100'?????????????
请问我用update 1234 set number=number+'100'后,执行后,我如何将它改为没有执行这第update语句?数据库中的number改为加上“100”。其中number为字符型。。。急急急急
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
z5wjz
2003-01-14
打赏
举报
回复
1234 -> [1234]
number初始值如果为null,则最终结果仍为null
hjhing
2003-01-14
打赏
举报
回复
update 1234
set number = left(number,len(number)-3)
where len(number)>=3
火车票管理系统
模拟火车票管理系统 package com.qdlg.trainticketmanger.service; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.Result
Set
; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import javax.swing.JOptionPane; import com.qdlg.trainticketmanger.model.DBConnection; import com.qdlg.trainticketmanger.model.Ticket; public class TicketManager { /** * * @param train * @return */ public int addTicket(Ticket ticket){ String sql="insert into ticket(ticket
Number
,train
Number
,trainDate,startStation,endStation," + "price,carriageNum,seatNum,type,grade,userId,trainTime) values(?,?,?,?,?,?,?,?,?,?,?,?)"; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; int
number
=0; try { pst = conn.prepareStatement(sql); pst.
set
String(1,ticket.getTicket
Number
()); pst.
set
String(2,ticket.getTrain
Number
()); pst.
set
String(3,ticket.getTrainDate()); pst.
set
String(4,ticket.getStartStation()); pst.
set
String(5,ticket.getEndStation()); pst.
set
Double(6,ticket.getPrice()); pst.
set
Int(7,ticket.getCarriageNum()); pst.
set
Int(8,ticket.getSeatNum()); pst.
set
String(9,ticket.getType()); pst.
set
String(10,ticket.getGrade()); pst.
set
Int(11,ticket.getUserId()); pst.
set
String(12,ticket.getTrainTime());
number
=pst.execute
Update
(); //JOptionPane.showMessageDialog(null, "存储成功!", "SUCCESS", JOptionPane.INFORMATION_MESSAGE) ; return
number
; } catch (SQLException e) { e.printStackTrace(); } return
number
; } /** * 批量添加 * @param list * @return */ public int addAll(List list){ //建立数据库操作 Connection conn=DBConnection.getConn(); Statement sta=null; try { sta=conn.createStatement(); //将自动提交模式转换为手动提交模式 conn.
set
AutoCommit(false); Iterator iter = list.iterator(); //循环将数据准换成SQL语句 while(iter.hasNext()){ Ticket ticket =iter.next(); sta.addBatch("insert into ticket(ticket
Number
,train
Number
,trainDate,startStation,endStation,"+ "price,carriageNum,seatNum,type,grade,userId) values ('"+ ticket.getTicket
Number
()+"','"+ ticket.getTrain
Number
()+"','"+ ticket.getTrainDate()+"','"+ ticket.getStartStation()+"','"+ ticket.getEndStation()+"','"+ ticket.getPrice()+","+ ticket.getCarriageNum()+","+ ticket.getSeatNum()+","+ ticket.getType()+","+ ticket.getGrade()+","+ ticket.getUserId()+")"); } //执行批量处理,提交事务 int [] batch
Number
=sta.executeBatch(); conn.commit(); //将手动提交模式转换为自动提交模式 conn.
set
AutoCommit(true); return batch
Number
.length; } catch (SQLException e) { JOptionPane.showMessageDialog(null, "请检查"+e.getMessage(), "系统不允许您重复录入重名物料", JOptionPane.ERROR_MESSAGE); e.printStackTrace(); try { //操作出现异常时,回滚事务 conn.rollback(); } catch (SQLException e1) { e1.printStackTrace(); } }finally{ try { //关闭Conn conn.close(); } catch (SQLException e) { e.printStackTrace(); } } return 0; } /** * * @param trainId */ public void delete(int ticketId){ String sql="delete from ticket where id=?"; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; try { pst = conn.prepareStatement(sql); pst.
set
Int(1,ticketId); pst.execute
Update
(); } catch (SQLException e) { e.printStackTrace(); JOptionPane.showMessageDialog(null, "NOthing ", "youqingtishi", JOptionPane.ERROR_MESSAGE); } } public boolean delete(String ticket
Number
,String train
Number
){ String sql="delete from ticket where ticket
Number
=? and train
Number
=?"; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; try { pst = conn.prepareStatement(sql); pst.
set
String(1,ticket
Number
); pst.
set
String(2,train
Number
); int
number
=pst.execute
Update
(); if(
number
>0){ return true; }else{ return false; } } catch (SQLException e) { e.printStackTrace(); } return false; } /** * * @param train */ public void
update
(Ticket ticket){ String sql="
update
ticket
set
ticket
Number
=?,train
Number
=?,trainDate=?,startStation=?,endStation=?," + "price=?,carriageNum=?,seatNum=?,type=?,grade=?,userId=? where id=?"; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; try { pst = conn.prepareStatement(sql); pst.
set
String(1,ticket.getTicket
Number
()); pst.
set
String(2,ticket.getTrain
Number
()); pst.
set
String(3,ticket.getTrainDate()); pst.
set
String(4,ticket.getStartStation()); pst.
set
String(5,ticket.getEndStation()); pst.
set
Double(6,ticket.getPrice()); pst.
set
Int(7,ticket.getCarriageNum()); pst.
set
Int(8,ticket.getSeatNum()); pst.
set
String(9,ticket.getType()); pst.
set
String(10,ticket.getGrade()); pst.
set
Int(11,ticket.getUserId()); pst.
set
Int(12,ticket.getId()); pst.execute
Update
(); // JOptionPane.showMessageDialog(null, "OK", "SUCCESS", JOptionPane.INFORMATION_MESSAGE) ; } catch (SQLException e) { e.printStackTrace(); } } public Ticket findById(Integer id) throws SQLException{ Ticket ticket=new Ticket(); String sql="select * from ticket where id=? "; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; Result
Set
rs=null; pst = conn.prepareStatement(sql); pst.
set
Int(1,id); rs=pst.executeQuery(); if(rs.next()){ ticket.
set
Ticket
Number
(rs.getString("ticket
Number
")); ticket.
set
Train
Number
(rs.getString("train
Number
")); ticket.
set
TrainDate(rs.getString("trainDate")); ticket.
set
StartStation(rs.getString("startStation")); ticket.
set
EndStation(rs.getString("endStation")); ticket.
set
Price(rs.getDouble("price")); ticket.
set
CarriageNum(rs.getInt("carriageNum")); ticket.
set
SeatNum(rs.getInt("seatNum")); ticket.
set
Type(rs.getString("type")); ticket.
set
Grade(rs.getString("grade")); ticket.
set
UserId(rs.getInt("userId")); ticket.
set
Id(rs.getInt("id")); } return ticket; } public Integer getIdId() throws SQLException{ String sql="select id from ticket"; Integer id=1; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; Result
Set
rs=null; pst = conn.prepareStatement(sql); rs=pst.executeQuery(); if(rs.next()){ rs.afterLast(); rs.previous(); id=rs.getInt("id"); } return id; } /** * * @return * @throws SQLException */ public Integer findUserId() throws SQLException{ String sql="select * from ticket"; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; Result
Set
rs=null; Integer userId=1; pst = conn.prepareStatement(sql); rs=pst.executeQuery(); if(rs.next()){ rs.afterLast(); rs.previous(); userId=rs.getInt("userId"); } return userId; } //anyonghuchaxun public List findByUserIdId(Integer userId) throws SQLException{ String sql="select * from ticket where userId=? "; Connection conn=DBConnection.getConn(); PreparedStatement pst=null; Result
Set
rs=null; pst = conn.prepareStatement(sql); pst.
set
Int(1,userId); Ticket ticket=null; List list=new ArrayList(); rs=pst.executeQuery(); while(rs.next()){ ticket=new Ticket(); ticket.
set
Ticket
Number
(rs.getString("ticket
Number
")); ticket.
set
Train
Number
(rs.getString("train
Number
")); ticket.
set
TrainDate(rs.getString("trainDate")); ticket.
set
TrainTime(rs.getString("trainTime")); ticket.
set
StartStation(rs.getString("startStation")); ticket.
set
EndStation(rs.getString("endStation")); ticket.
set
Price(rs.getDouble("price")); ticket.
set
CarriageNum(rs.getInt("carriageNum")); ticket.
set
SeatNum(rs.getInt("seatNum")); ticket.
set
Type(rs.getString("type")); ticket.
set
Grade(rs.getString("grade")); ticket.
set
UserId(rs.getInt("userId")); ticket.
set
Id(rs.getInt("id")); list.add(ticket); } return list; } }
BBS(php mysql)完整版(二)
//此页面为look.php <? include signup/mysql.inc; $sql=select * from .$table. where id=’$id’; $result=mysql_query($sql)or die(mysql_error()); $row=mysql_fetch_array($result); $
number
=++$row[
number
]; $sql=
update
$table
set
number
=’$
number
’ where id=’$id’; mysql_query($sql)or die(mysql_error());
【MySQL】
update
A
set
num=num+ ? where id=?是否存在并发的问题
在我们的实际开发中,往往会遇到更新数据字段的问题。如投票时,如果多人同时投票,是否存在在取数据并更新的时候,原始值是相同的,而后续的
update
操作会造成错误的数据? 比如,表名A,字段名为
number
,如下的SQL语句: 语句1:
update
A
set
number
=
number
+ 5 where id=1; 语句2:
update
A
set
number
=
number
+ 7 where id=1;
讨论
update
A
set
number
=
number
+ ? where id=?的原子性 (含数据库原理)
结论:1. 本句本身具有原子性2. 当前读(包含
update
等写入操作)锁定数据,直到事务提交https://www.zhihu.com/question/46733729/answer/128582074阿里的mysql大咖给出了肯定的答案比如,表名A,字段名为
number
,如下的SQL语句: 语句1:
update
A
set
number
=
number
+ 5 where id=1; 语句2...
MySQL
update
A
set
num=num+ ? where id=?是否存在并发的问题
在我们的实际开发中,往往会遇到更新数据字段的问题。如投票时,如果多人同时投票,是否存在在取数据并更新的时候,原始值是相同的,而后续的
update
操作会造成错误的数据? 比如,表名A,字段名为
number
,如下的SQL语句: 语句1:
update
A
set
number
=
number
+ 5 where id=1; 语句2:
update
A
set
number
=
number
+ 7 where...
应用实例
27,581
社区成员
68,548
社区内容
发帖
与我相关
我的任务
应用实例
MS-SQL Server 应用实例
复制链接
扫一扫
分享
社区描述
MS-SQL Server 应用实例
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章