加一个 时间戳 TimeStamp 可以解决 重复提交问题 SqlServer
{
private SqlConnection mCnn = null;
private long TimeStampValue;
public Form1()
{
InitializeComponent();
mCnn = new SqlConnection();
mCnn.ConnectionString = "Data Source=192.168.18.205;Database=" +
"Test;Uid=sa;Pwd=kicpassword";
mCnn.Open();
}
//读取
private void btnReadTimeStamp_Click(object sender, EventArgs e)
{
//使用convert(bigint,FTimeStamp) MyTimeStamp把FTimeStamp转换为bigint整数类型
string strSQL = "Select Top 1 FCaption,convert(bigint,FTimeStamp) MyTimeStamp,FTimeStamp From t_TimeStamp";
SqlCommand Cmd = new SqlCommand(strSQL, mCnn);
SqlDataReader Reader = Cmd.ExecuteReader();
while (Reader.Read())
{
long value = (long)Reader["MyTimeStamp"];
TimeStampValue = value; //在此处把TimeStamp的值赋值给变量,用于更新时判断
txtTimeStamp.Text = value.ToString();
txtTimeStampHex.Text=value.ToString("X16");
}
Reader.Close();
Reader = null;
}
//更新
private void btnUpdateTimeStamp_Click(object sender, EventArgs e)
{
//Where条件加上TimeStamp的判断,必须和读取的一致,用于并发操作的重复提交
string strSQL = "Update t_TimeStamp Set FCaption = '修改记录'" +
" Where FTimeStamp =" + TimeStampValue.ToString();
SqlCommand cmd = new SqlCommand(strSQL, mCnn);
int UpdateCount = cmd.ExecuteNonQuery();
if (UpdateCount <= 0)
{
MessageBox.Show("更新失败!");
}
else
{
MessageBox.Show("更新成功!");
}
}
}
加一个 时间戳 TimeStamp 可以解决 重复提交问题 SqlServer的更多相关文章
- Springboot+Redisson自定义注解一次解决重复提交问题(含源码)
前言 项目中经常会出现重复提交的问题,而接口幂等性也一直以来是做任何项目都要关注的疑难点,网上可以查到非常多的方案,我归纳了几点如下: 1).数据库层面,对责任字段设置唯一索引,这是最直接有效 ...
- easyui的tab加载页面中的form重复提交
http://blog.csdn.net/fxz1982/article/details/8987769 Easyui中的tabs组件以href方式加载目标页面,如果目标页面中有dialog或者win ...
- Springboot 2.x 如何解决重复提交 (本地锁的实践)
有没有遇到过这种情况:网页响应很慢,提交一次表单后发现没反应,然后你就疯狂点击提交按钮(12306就经常被这样怒怼),如果做过防重复提交还好,否则那是什么级别的灾难就不好说了... 本文主要是应用 自 ...
- bootstrap模态框通过传值解决重复提交问题
自己通过模态框确认是否提交的功能时,总是重复提价上次的请求. 原因:重复的原因是jquery通过id绑定了确定按钮的onclick事件,所以每次提交都会增加 一次绑定(没有清除上次的绑定),才造成了重 ...
- (亿级流量)分布式防重复提交token设计
大型互联网项目中,很多流量都达到亿级.同一时间很多的人在使用,而每个用户提交表单的时候都可能会出现重复点击的情况,此时如果不做好控制,那么系统将会产生很多的数据重复的问题.怎样去设计一个高可用的防重复 ...
- PHP防止用户重复提交表单
我们提交表单的时候,不能忽视的一个限制是防止用户重复提交表单,因为有可能用户连续点击了提交按钮或者是攻击者恶意提交数据,那么我们在提交数据后的处理如修改或添加数据到数据库时就会惹上麻烦. 那么如何规避 ...
- php通过token验证表单重复提交
PHP防止重复提交表单 2016-11-08 轻松学PHP 我们提交表单的时候,不能忽视的一个限制是防止用户重复提交表单,因为有可能用户连续点击了提交按钮或者是攻击者恶意提交数据,那么我们在提交数据后 ...
- SQL Server数据库(时间戳timestamp)类型 (转载)
timestamp介绍 公开数据库中自动生成的唯一二进制数字的数据类型. timestamp 通常用作给表行加版本戳的机制. 存储大小为 8 个字节. 不可为空的 timestamp 列在语义上等价于 ...
- 防止按钮button重复提交,点击后失效,10秒后恢复
<script type="text/javascript"> $(function () {//页面完全加载完后执行 /*防止重复提交 10秒后恢复*/ var is ...
随机推荐
- Injection Attacks-Log 注入
日志注入(也称日志文件注入) 很多应用都维护着一系列面向授权用户.通过 HTML 界面展示的日志,因而成为了攻击者的首要目标,这些攻击者试图伪装其他攻击.误导日志读者,甚至对阅读和分析日志监测应用的用 ...
- URAL 1009 K-based numbers(DP递推)
点我看题目 题意 : K进制的N位数,不能有前导零,这N位数不能有连续的两个0在里边,问满足上述条件的数有多少个. 思路 : ch[i]代表着K进制的 i 位数,不含两个连续的0的个数. 当第 i 位 ...
- zoj 3380 Patchouli's Spell Cards 概率DP
题意:1-n个位置中,每个位置填一个数,问至少有l个数是相同的概率. 可以转化求最多有l-1个数是相同的. dp[i][j]表示前i个位置填充j个位置的方案数,并且要满足上面的条件. 则: dp[i] ...
- java遍历树(深度遍历和广度遍历
java遍历树如现有以下一颗树:A B B1 B11 B2 B22 C C ...
- CSS+DIV布局初练—DIV元素必须成对出现?
一直做C/S开发的工作,但是很少做和布局相关的工作,往往都是同事将界面设计好,自己填写代码而已,对于B/S的工作,做过,但是很少没有像C/S这么多,界面布局的话,更无从谈起. 日子就这么过,一天一个样 ...
- Oracle10g 回收站及彻底删除table : drop table xx purge
drop后的表被放在回收站(user_recyclebin)里,而不是直接删除掉.这样,回收站里的表信息就可以被恢复,或彻底清除. 1.通过查询回收站user_recyclebin获取被删除的表信息, ...
- 用PHP尝试RabbitMQ(amqp扩展)实现消息的发送和接收
消费者:接收消息 逻辑:创建连接-->创建channel-->创建交换机-->创建队列-->绑定交换机/队列/路由键-->接收消息 <?php /********* ...
- 我的JAVA基础学习史1
又开始学习了..很是兴奋呢~~~~ 本来是想学安卓的,但是安卓的视频课程中,第一阶段是环境,第二阶段是JAVA基础(讲课的这个老师真是在念课本,但是实在没有办法,没找到更好.更完整的资料了). 虽然以 ...
- nf_contrack_netlink.c
/* Connection tracking via netlink socket. Allows for user space * protocol helpers and general trou ...
- function 的声明
<?php function test() { echo "abc"; } test(); ?> 结论: 一 编译 a.对 函数声明进行词法分析和语法分析:在语法分析中 ...