首页 新闻 会员 周边 捐助

sql相关问题

0
悬赏园豆:15 [已解决问题] 解决于 2012-04-25 09:58

三张数据表,其中B表和C表中的sort字段中的值对应的是A表中id的值,现在要把B表和C表中的sort字段中的值改为A表中id对应的i_name,有什么好的方便的方法吗?

猪头猪脑的主页 猪头猪脑 | 初学一级 | 园豆:6
提问于:2012-04-24 12:42
< >
分享
最佳答案
0

园里有问过类似的问题,可以找找;

好像是通过写存储过程来实现的吧,挺麻烦的;

通常习惯用程序去获取内容

收获园豆:15
KivenRo | 小虾三级 |园豆:1734 | 2012-04-24 12:56

该搜索什么关键词呢。。。

猪头猪脑 | 园豆:6 (初学一级) | 2012-04-24 13:28

这儿有个地址,你看一个,问题是一样的

http://q.cnblogs.com/q/32430/

KivenRo | 园豆:1734 (小虾三级) | 2012-04-24 13:34

@白雲天: 这个需要改为对应的值,而不是查询

猪头猪脑 | 园豆:6 (初学一级) | 2012-04-24 14:33

你是想将修改后的值重新再保存到数据库中吗

KivenRo | 园豆:1734 (小虾三级) | 2012-04-24 14:38

@白雲天: 是啊。。

猪头猪脑 | 园豆:6 (初学一级) | 2012-04-24 15:08

用程序实现:

DataSet T_A = 获取表1数据集,返回DataSet;(也可以返回DataTable)
for (int i = 0; i < T_A.Tables[0].Rows.Count; i++)
{
     string id = T_A.Tables[0].Rows[i]["id"].ToString();
     string name = T_A.Tables[0].Rows[i]["I_name"].ToString();
     //修改表B中的数据:替换语句
     string strsql = "update 表B set Sort=replace(','+Sort+',' , '," + id + ",' , '," + name + ",')";
     //执行修改方法
}

标红的数据用参数替换掉就行了

当然如果能写成存储过程,那就更好了。。。

KivenRo | 园豆:1734 (小虾三级) | 2012-04-24 15:40

@白雲天: 用别的方法实现,不过还是谢谢您。

猪头猪脑 | 园豆:6 (初学一级) | 2012-04-25 09:58
其他回答(1)
0

同意,我们一般都是可以通过程序去获得内容的,而数据库字段中存储的内容只要对应于那张表字段的id就可以了

发表是最好的记忆 | 园豆:286 (菜鸟二级) | 2012-04-24 13:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册