以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- up date (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=164193) |
-- 作者:tld -- 发布时间:2021/4/29 9:02:00 -- up date 老师好,下面的语句,希望实现如下功能: 开票流水表中有票据集合及开票id列,其中票据编号集合列是多个票据号码组成的字符串。希望在票据编号集合列中找到原票据号码,将一个新的票据号码替换旧的票据号码。如何用up date命令实现? hm_n 是新号码 hm_o 是原号码 dim hm as string = "%" & hm_o & "%" dim c md as new SQLC ommand cmd.Co nnectionName = "数据源名称" cmd.Comm andText = "UPD ATE 开票流水 SET 票据编号集合 = ? WHERE 票据编号集合 like ?" cmd.Para meters.Add("@票据编号集合", ) cmd.Para meters.Add("@票据编号集合, hm ) cmd.Exe cuteNonQuery() 谢谢!
|
-- 作者:有点蓝 -- 发布时间:2021/4/29 9:15:00 -- 什么数据库?SqlServer? 试试 cmd.CommandText = "UPDATE 开piao流水 SET piao据编号集合 = replace(piao据编号集合,\',\'+?+\',\',\',\'+?+\',\') WHERE piao据编号集合 like \'%,\'+?+\',%\'"cmd.Para meters.Add("@编号1",hm_n) cmd.Para meters.Add("@编号2, hm_o ) cmd.Para meters.Add("@编号3, hm_o ) 如果不行就只能直接拼sql cmd.CommandText = "UPDATE 开piao流水 SET piao据编号集合 = replace(piao据编号集合,\',\'+" & hm_n & "+\',\',\',\'+" & hm_o & "+\',\') WHERE piao据编号集合 like \'%,\'+" & hm_o & "+\',%\'"
|
-- 作者:tld -- 发布时间:2021/4/29 14:05:00 -- 老师,是SqlServer数据库。票据编号集合中,不一定有几个票据编号组成。希望在票据编号集合中查找票据编号为 a的编号,用 编号b 来替换。 |
-- 作者:有点蓝 -- 发布时间:2021/4/29 15:01:00 -- 不管几个编号都可以使用上面的方法 |
-- 作者:tld -- 发布时间:2021/4/29 22:43:00 -- 老师,确认是如下顺序 cmd.Para meters.Add("@编号1",hm_n) cmd.Para meters.Add("@编号2, hm_o ) cmd.Para meters.Add("@编号3, hm_o ) 而不是 下面的顺序吗? cmd.Para meters.Add("@编号1, hm_o ) cmd.Para meters.Add("@编号2",hm_n) cmd.Para meters.Add("@编号3, hm_o ) 狐表中的字符串 replace ,都是被替换的字符串在前 谢谢老师! |
-- 作者:有点蓝 -- 发布时间:2021/4/29 23:19:00 -- cmd.Para meters.Add("@编号1, hm_o ) cmd.Para meters.Add("@编号2",hm_n) cmd.Para meters.Add("@编号3, hm_o ) |