| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1660 人关注过本帖
标题:删除多个表的数据
只看楼主 加入收藏
huoqilin
Rank: 1
等 级:新手上路
帖 子:97
专家分:0
注 册:2007-7-20
收藏
 问题点数:0 回复次数:10 
删除多个表的数据
string userid = Request.QueryString["user_id"];
SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["loveConnectionString"]);
SqlCommand delectCmd = new SqlCommand("delete from larchives where user_id='" + userid + "'", conn);
conn.Open();
delectCmd.ExecuteReader();
conn.Close();

根据一个传值,一次性删除多个表的数据,应该怎么写?
搜索更多相关主题的帖子: 数据 conn userid SqlCommand delectCmd 
2007-10-16 11:53
jxnuwy04
Rank: 2
等 级:新手上路
威 望:4
帖 子:768
专家分:0
注 册:2006-9-15
收藏
得分:0 

执行删除操作可以这样写delectCmd.ExecuteReader()?应该是这样的吧delectCmd.ExecuteNonQuary().
如果像你说的想一次删除多个表的纪录,我想到的方法是写个存储过程,做个批量处理.即在存储过程中写多个删除语句,一次执行这么语句就等于删除了多个表的记录啊.


------------------不为别的,就为你,我的理想!-----------------
2007-10-16 13:10
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
多弄几个SqlCommand就行了。

飘过~~
2007-10-16 13:51
huoqilin
Rank: 1
等 级:新手上路
帖 子:97
专家分:0
注 册:2007-7-20
收藏
得分:0 
SqlCommand delectCmd = new SqlCommand("delete from 表1 where user_id='" + userid + "'", conn);
SqlCommand delectCmd = new SqlCommand("delete from 表2 where user_id='" + userid + "'", conn);
这两个怎么写在一起?
多写几个SqlCommand,会提示SqlCommand已经定义过。

2007-10-16 13:55
sean88
Rank: 1
等 级:新手上路
帖 子:146
专家分:0
注 册:2007-3-27
收藏
得分:0 
以下是引用huoqilin在2007-10-16 13:55:48的发言:
SqlCommand delectCmd = new SqlCommand("delete from 表1 where user_id='" + userid + "'", conn);
SqlCommand delectCmd = new SqlCommand("delete from 表2 where user_id='" + userid + "'", conn);
这两个怎么写在一起?
多写几个SqlCommand,会提示SqlCommand已经定义过。

这样试一下:
SqlCommand delectCmd = null;
delectCmd = new SqlCommand("delete from 表1 where user_id='" + userid + "'", conn);
delectCmd = new SqlCommand("delete from 表2 where user_id='" + userid + "'", conn);

不过建议写成存储过程,在过程里写SQL将所有相关的数据删除.
CREATE PROCEDURE Proc_DeleteData
@user_id int
as
delete from 表1 where user_id=@user_id
delete from 表2 where user_id=@user_id
go



Knowledge is infinite.
2007-10-16 14:18
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 
提示定义了,就换个名字啊

飘过~~
2007-10-16 14:25
垃圾的沉默
Rank: 1
等 级:新手上路
威 望:2
帖 子:511
专家分:0
注 册:2007-6-25
收藏
得分:0 
LZ的想法应该要删除相关表的记录吧?

人们笑我太疯癫...我笑人们太正经
2007-10-16 14:26
师妃暄
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:805
专家分:107
注 册:2006-3-1
收藏
得分:0 
存储过程当然是最好的解决方案

有实力才会有魅力 实力来自坚持不懈的努力
2007-10-16 16:53
梦灵儿
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:260
专家分:9
注 册:2007-8-7
收藏
得分:0 

写一个触发器可以搞定
先删除外键的关系.,最后删除主键表


2007-10-17 12:48
huoqilin
Rank: 1
等 级:新手上路
帖 子:97
专家分:0
注 册:2007-7-20
收藏
得分:0 
存储过程不会用,不知道格式
不过还是谢谢大家了。

2007-10-17 13:55
快速回复:删除多个表的数据
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021705 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved