以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  删除前判断  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=153456)

--  作者:outcat
--  发布时间:2020/8/11 15:44:00
--  删除前判断
有个员工信息表,想实现该员工在这个系统 的所有表中,如果都没有这个名字才可以删除,这个作为一个判断条件,当然具有很高权限的人,可以排除这个判断条件的,这个怎么写呀。
--  作者:有点蓝
--  发布时间:2020/8/11 15:55:00
--  
只能一个一个表的查了

比如:
Dim nms() As String = {"表A","表B",....}
Dim name As String = "张三"
Dim f As Boolean
For Each m As String In nms
    If DataTables(m).DataCols.Contains("姓名")
        If DataTables(m).DataCols.Contains("姓名")
            If DataTables(m).Find("姓名=\'" & name & "\'") IsNot Nothing Then
                f = True
                Exit For
            End If
        End If
    End If
Next

If f = True Then
msgbox("有")
Else
msgbox("没有,可以删除")
End If

如果都是外部表,建议在数据库里建一个视图,类似:

select 姓名 from 表A union select 姓名 from 表B  union .......

然后通过sql判断:select count(*) from 某视图 where 姓名 = \'张三\'