Foxtable(狐表)用户栏目专家坐堂 → 求一高效函数


  共有2700人关注过本帖树形打印复制链接

主题:求一高效函数

帅哥哟,离线,有人找我吗?
supwork
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
求一高效函数  发帖心情 Post By:2015/8/12 21:34:00 [只看该作者]

出入_主表  出入_明细表   关联字段 为 GUID

 

要求写一函数 dellOneRecord

调用方式为:

dellOneRecord("出入_主表", "出入_明细表","GUID")

 

达到的效果 是:删除主有有记录,但明细表无记录的主表数据 ,删除明细表有数据记录,但主表无记录的数据。

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/12 21:37:00 [只看该作者]

 delete fr om 主表 where guid not in (select guid fr om 子表)

 

 delete fr om 子表 where guid not in (select guid fr om 父表)


 回到顶部
帅哥哟,离线,有人找我吗?
supwork
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2015/8/19 11:10:00 [只看该作者]

Dim cmda As New SQLCommand
cmda.ConnectionName= gs_strActiveConn
cmda.CommandText = "delete fr om {订单_主表} where [GUID] not In (Select [GUID] fr om {订单_明细表})"
cmda.ExecuteNonQuery

Dim cmdb As New SQLCommand
cmdb.ConnectionName= gs_strActiveConn
cmdb.CommandText = "delete fr om {订单_明细表} where [GUID] not In (Select [GUID] fr om {订单_主表})"
cmdb.ExecuteNonQuery

 

怎么这样在命令窗口执行没有生效呢

[此贴子已经被作者于2015/8/19 11:10:15编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
supwork
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2015/8/19 11:19:00 [只看该作者]

delete fr om 订单_主表 where GUID not In (Select GUID fro m 订单_明细表)

 

这代码在数据库中调试都没有效果

 


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/19 11:28:00 [只看该作者]

语句没有问题。不可能没效果,满足条件的肯定会删除。

 回到顶部
帅哥哟,离线,有人找我吗?
supwork
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2015/8/19 11:56:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:23525.png
图片点击可在新窗口打开查看
数据库中执行,没有删除行

 

如果去掉NOT 则有执行了

 

[此贴子已经被作者于2015/8/19 11:56:44编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/8/19 12:10:00 [只看该作者]

你要对比数据啊。

 

0行受影响说明没有满足条件的数据啊,也就是之前删除完了啊


 回到顶部