C#更新SQLServer中的TimeStamp字段(时间戳) 防止同时修改一行时覆盖更新
public partial class Form1 : Form
{
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("更新成功!");
}
}
}
C#更新SQLServer中的TimeStamp字段(时间戳) 防止同时修改一行时覆盖更新的更多相关文章
- sqlserver中怎么查询字段为空的记录
sqlserver中怎么查询字段为空的记录的两种方法: 详细介绍请查看全文:https://cnblogs.com/qianzf/ 原文博客的链接地址:https://cnblogs.com/qzf/
- mysql和SqlServer 中取得汉字字段的各汉字首字母
mysql 中取得汉字字段的各汉字首字母 这个转载于http://blog.csdn.net/lky5387/article/details/11973721 DELIMITER ;;CREATE ...
- SQLSERVER中的timestamp 和 C#中的byte[] 转换
项目中由于需求设计,数据库中需要一个timestamp时间戳类型的字段来作为区别数据添加和修改的标识.由于timestamp在SQL SERVER 2005数据库中,不可为空的timestamp类型在 ...
- 修改计算机名并更新sqlserver中存储的服务器名称
1. 查看计算机名use master go select @@servername select serverproperty('servername') 2.同步更新SQLse ...
- knockout更新列表中的某条数据,knockout.js绑定数组时更新其中一条数据
knockout是一款前端实现MVVM的JS框架,仅knockout.js一个47kb的文件,相当实用,做前端无刷新页面,快速实现JS与HTML数据交互. knockout目前最新版:knockout ...
- oracle中的timestamp字段的值乱码问题修改
我的解决方案: 直接新增一个系统变量: key值为:NLS_TIMESTAMP_FORMATvalue的值为:YYYY-MM-DD HH24:MI:SSFF6 其它解决方案: 在登录PLSQL之后,查 ...
- SQLSERVER中计算某个字段中用分隔符分割的字符的个数
比如字段sid中用'|'分割的一些字符 a|b|c|d,需要通过sql查询出字符的个数是4. 可以使用如下脚本: SELECT LEN(sid)-LEN(REPLACE(sid,'|',''))+ ...
- Phoenix中的timestamp字段查询以及timestamp的比较查询
1 查询语法 SELECT TO_CHAR(createtime, 'yyyy-MM-dd HH:mm:ss') FROM USER 2 需要比较timestamp的语法查询 select * fro ...
- mysql更新表中日期字段时间
DATE_ADD和DATE_SUB函数可以用INTERVAL关键字标识的时间间隔进行加减操作,类似于PHP中的strtotime函数. 1.更新表中有效期valid_time字段值都增加一天 UPDA ...
随机推荐
- Sturts2的action不执行任何方法的原因
今天用<s:url action="xxx">调用action的时候出现了一个“异常”, action里的任何方法都没有执行,直接返回success,而且没有任何报错. ...
- Bots(逆元,递推)
H. Bots time limit per test 1.5 seconds memory limit per test 256 megabytes input standard input out ...
- IOS学习目录
一.UI 1.基础控件 2.高级控件 二.多线程网络 1.网络请求.网络安全 2.
- HDU 5047 Sawtooth(大数模拟)上海赛区网赛1006
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5047 解题报告:问一个“M”型可以把一个矩形的平面最多分割成多少块. 输入是有n个“M",现 ...
- smem – Linux 内存监视软件
导读 Linux 系统的内存管理工作中,内存使用情况的监控是十分重要的,在各种 Linux 发行版上你会找到许多这种工具.它们的工作方式多种多样,在这里,我们将会介绍如何安装和使用这样的一个名为 sm ...
- windows程序是如何开始执行的??
windows的资源管理器侦测到使用者执行了一个程序————>windows调用加载器加载该程序————>调用C start code——>C start code 调用WinMai ...
- int *const && int const * && const int *的区别
ANSIC允许声明常量,常量和变量不同,常量就是不可以改变的量,用关键字const来修饰 比如:const int a int const a 以上两种声明方式是一样的,我们不需要考虑const和in ...
- ssh authentication魔鬼细节--.ssh文件夹权限
换到7后出现莫名奇妙问题,ssh验证始终不起作用. 服务器 centos7#mkdir ~/.ssh centos7#touch ~/.ssh/authorized_keys centos7#chmo ...
- apache2错误日志在哪,可以看到php错误
在以下路径中 /var/log/apache2/error.log
- uniq命令注意事项,检查重复行的时候,只会检查相邻的行。
今天在使用uniq命令统计数量时,uniq -c总是得不到想要的效果,相同的行没有合并,例如 后来在http://ju.outofmemory.cn/entry/78365才看到,原来uniq检查重复 ...