以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 如何判断是否包含某主键 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=194860) |
-- 作者:rogen -- 发布时间:2025/1/22 10:01:00 -- 如何判断是否包含某主键 想实现不重复添加主键值,作为主表和子表的关联字段(2个表没有用自动编号字段来关联) 如主表的“主键”字段存储了: 40281,40430,40520,40685,40972,41284,41173,41284 。 其中的数字为子表的主键。 如何判断某个主键是否存在于该字符串内? 比如 4043就不存在,但40430就存在。 |
-- 作者:有点蓝 -- 发布时间:2025/1/22 10:12:00 -- dim s as string = "40281,40430,40520,40685,40972,41284,41173,41284" s = "," & s & "," msgbox(s.contains(",4043,")) msgbox(s.contains(",40430,"))
|
-- 作者:rogen -- 发布时间:2025/1/22 10:15:00 -- 之前我是想用split将字符串分割成数组, 但分割后,我用contais或者indexof 来判断是否包含新值,都不行。
|
-- 作者:有点蓝 -- 发布时间:2025/1/22 10:18:00 -- 怎么用的?贴出代码 |
-- 作者:rogen -- 发布时间:2025/1/22 10:24:00 -- Dim zjs As String = "40281,40430,40520,40685,40972,41284,41173,41284,41173,41407,41569,41698" Dim zjss() As String = zjs.Split(",") msgbox(zjss.Contains(4052)) msgbox(zjss.IndexOf(4052)) 这2种都不行,若行的话,我感觉这样更简单些。
|
-- 作者:有点蓝 -- 发布时间:2025/1/22 10:28:00 -- Dim zjs As String = "40281,40430,40520,40685,40972,41284,41173,41284,41173,41407,41569,41698" Dim zjss() As String = zjs.Split(",") msgbox(zjss.Contains("4052")) msgbox(array.IndexOf(zjss, "4052")) http://www.foxtable.com/webhelp/topics/0216.htm
|
-- 作者:rogen -- 发布时间:2025/1/22 10:40:00 -- 原来是要将数字转为字符再做判断。 |