.net-C#删除问题,会把两条数据同时删除

问题描述

C#删除问题,会把两条数据同时删除

我有一张表,编号设为主键,并且是自增长的,然后这张表还有其他字段,工作卡号,姓名,公司系统帐号,密码。现在我有两条数据,工作卡号,姓名,公司系统帐号,密码都一样,就只有编号不同,有人离职,需要删除其中一条数据,为什么我删除的都会是两条同时删除,BLL层的代码是这样:

  public void delete(string Card_ID)
    {
       string strDel = string.Format("insert into DelSystemTable(ID,Card_ID,UserID,Name,PassWord,CreatTime,SystemName,DeleteTime)select ID, Card_ID,UserID,Name,PassWord,CreatTime,SystemName,getdate() from SystemTable where Card_ID='{0}'  delete SystemTable where Card_ID='{0}'", Card_ID);
       sqlH.ExSql(strDel);
    }

解决方案

原因是你的删除语句用Card_ID作为条件. 上面你也说了,这两条数据除了自增ID不一样以外,其它的都一样.你用Card_ID作为删除条件.在执行时,两条数据符合,肯定都被删除掉了. 要删除其中的一条,删除条件要使用自增ID
where Card_ID= ... 改成 where ID=...

解决方案二:

工作卡号,姓名,公司系统帐号,密码都一样,就只有编号不同

delete SystemTable where Card_ID='{0}'

你的card_id应该是工作卡号,因为工作卡号一样所以删除掉两行,你条件里直接用编号(因为编号不同),就没有这个问题了

时间: 2024-11-03 18:14:59

.net-C#删除问题,会把两条数据同时删除的相关文章

sql server中如何将相同货物的两条数据的数量相加合成一条替代原始数据

问题描述 sql server中如何将相同货物的两条数据的数量相加合成一条替代原始数据 表中如图所示两条数据,按照mh,有相同的,则将两条数据的数量相加合并为一条,没有相同则不变,表中mh相同最多只有2条.怎么样得到 mh sl dw ck A2 100 A A 解决方案 select mh,dw,ck,sum(sl) from xxx group by mh,dw,ck 这样汇总出一个新的数据,用这个数据替换你原有的就好了 还可以将这些数据 select into 到一个新表,然后删除旧表,再

一张表如何关联另一张表中的两条数据!出现错误!代码和表如下!在线等

问题描述 一张表如何关联另一张表中的两条数据!出现错误!代码和表如下!在线等 public DataTable GetScrapTirePage(StringBuilder SqlWhere, IList<SqlParam> IList_param, int pageIndex, int pageSize, ref int count) { StringBuilder strSql = new StringBuilder(); strSql.Append("select Base_S

java代码-请教各位大神,遍历数据库 为什么只有一条数据,里面明明有两条数据,哪位大神帮忙看看

问题描述 请教各位大神,遍历数据库 为什么只有一条数据,里面明明有两条数据,哪位大神帮忙看看 <% Connection con; Statement stmt; ResultSet rs; Class.forName("com.mysql.jdbc.Driver"); DriverManager.registerDriver(new com.mysql.jdbc.Driver()); String DbConn = "jdbc:mysql://localhost/te

sql查询-sql 同一个表中如何把两条数据合并成一条显示,并显示两条数据的全部内容

问题描述 sql 同一个表中如何把两条数据合并成一条显示,并显示两条数据的全部内容 数据库是 sqlserver2008的环境. 是一个列变行的问题 ,请大师帮忙啊. 比如 table表中 字段: id name bianhao address shijian 1 张三 001 北京 2013-12-1 2 李四 001 北京 2013-12-1 最后显示的内容为: 字段: name1 name2 bianhao address shijian 张三 李四 001 北京 2013-12-1 合并

select-mysql数据库里只有一条数据为什么查询出来有两条重复的数据

问题描述 mysql数据库里只有一条数据为什么查询出来有两条重复的数据 mysql数据库里只有一条数据为什么查询出来有两条重复的数据 而且两条数据的主键都是一样的. 下面是查询的sql: select a.*,a.prepared_date-now() prepared_date_flag,a.released_date-now() released_date_flag, a.end_date-now() end_date_flag, u.user_type from bidding a inn

大数据量下的查找最新的几条数据的通用方法

由于项目需要,需要获取一组数据的的最新一条数据,表结构如下: CREATE TABLE [dbo].[WUSU_SUOLITest_Table](  [ID] [bigint] IDENTITY(1,1) NOT NULL,  [ReceiveTime] [datetime] NULL,  [GroupID] [bigint] NOT NULL,  [DataValue] [float] NULL,  [SensorCode] [char](10) NOT NULL, ) 在这个表上只有两种操作

查询-sql 未满足条件时再加一条数据

问题描述 sql 未满足条件时再加一条数据 有表aa : ID , PID 1 , 5 2 , 4 3 , 20 4 , 11 5 , 2 条件 PID<=10 就查询出前三条数据条件 PID<=6 就查询出前两条数据 要怎么写 解决方案 下面是oracle的,各个数据的取前2条和前三条关键字不一样,有些是top有些事limit,有些事rownum SELECT IDPID FROM AA WHERE PID<=10 AND ROWNUM<=3 UNION SELECT IDPID

如何防止一条数据被多个用户使用

问题描述 举例:a模块有5条数据,这5条数据在b模块中要用到b模块有两个人在同时操作,比如是新增操作,操作人x已经选择了a模块中的两条数据,操作人y也选择了a模块中的一条数据,如何保证xy两个人不会选择到同一条数据,并且当其中某人将已选择的数据放弃后(相当于未选择),另外一个人就能选择别人放弃的数据. 解决方案 解决方案二:加锁,sql可以加锁的解决方案三:引用1楼的回复: 加锁,sql可以加锁的 谢谢可以锁到记录么PS:比如将这5条数据绑定成一个列表,xy都打开了这个列表,只不过完成选择数据的

mysql-如何通过django实现获取某条数据的前一条和后一条数据?

问题描述 如何通过django实现获取某条数据的前一条和后一条数据? 如题,通过django获取某条数据的前一条和后一条数据? 想实现新闻页的"上一条".下一条的功能. 解决方案 http://blog.sina.com.cn/s/blog_67d995f001015jrh.html 解决方案二: 您好,这个是分页呀,我想实现的功能是,查询某一条数据的前后两条数据,通过django实现,不使用sql语句.