以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- SQL的Update语句中的表名可以是动态的吗? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=29342) |
-- 作者:zpx_2012 -- 发布时间:2013/3/5 0:53:00 -- SQL的Update语句中的表名可以是动态的吗? 如题, 在系统中有一此常用的数据设置为数据字典,比如“计量单位”。在数据字典的目录树中“计量单位”节点下的“个”改为“pc”, 现在通过AfterEditNode的事件代码更新后台所有数据表中有“计量单位”列里面的“个”都更新为“pc”
\'更新所有后台表单中相关引用
两个问题: 1、蓝色的代码对后台没有加载的数据起作用吗?(因为编辑目录树时可能很多表都没有加载) 2、update语句中的{表名}是否可以像红色所示那样动态表示。 如果不可以,要实现我说的功能怎么办?
谢谢各位老师!
|
-- 作者:lihe60 -- 发布时间:2013/3/5 6:53:00 -- 可以 cmd.CommandText = "Update {“” & tb.name & “”} Set 值 = \'" & e.NewText & "\' Where 数据名称 = \'" & pth(0) & "\' And 值 = \'" & pth(1) & "\'" |
-- 作者:双轨制 -- 发布时间:2013/3/5 8:29:00 -- cmd.CommandText = "Update " & tb.name & " Set 值 = \'" & e.NewText & "\' Where 数据名称 = \'" & pth(0) & "\' And 值 = \'" & pth(1) & "\'" [此贴子已经被作者于2013-3-5 8:28:49编辑过]
|
-- 作者:zpx_2012 -- 发布时间:2013/3/5 12:09:00 -- 谢谢,但好像不起作用唉!
\'更新所有后台表单中相关引用 For Each tb As DataTable In DataTables
是不是前面蓝色代码不能遍历后台所有表,如果要遍历后台所有表要怎么写SQL代码?
|
-- 作者:狐狸爸爸 -- 发布时间:2013/3/5 12:56:00 -- 参考:
http://www.foxtable.com/help/topics/1943.htm
|
-- 作者:zpx_2012 -- 发布时间:2013/3/5 14:56:00 -- 谢谢狐爸,遍历后台数据表是可以了。但就是节点表题改变时不能更新所有已存在的表中的相关数据。
Dim cmd As New SQLCommand
是不是红色部份不正确?
[此贴子已经被作者于2013-3-5 14:56:50编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2013/3/5 15:35:00 -- 用output.show或者messagebox.show看看合成的sql语句是什么,复制这个语句到sql执行窗口执行,看看有没有用,通常是因为你合成的语句有问题。
|