以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]不加载表的字段已使用的判断 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=70694) |
-- 作者:blsu33 -- 发布时间:2015/6/26 15:19:00 -- [求助]不加载表的字段已使用的判断 老师, 原来的表是加载进来在判断,现在不加载,都是SQL查询数据怎么做呢 例如 原来 -部门档案中的0101 财务部 我可以用for each 遍历datatable 然后 find列名 查找对应行 找到就mesbox 现在 表没有加载进来 for each ?这块怎遍历 SQL上的表
|
-- 作者:大红袍 -- 发布时间:2015/6/26 15:21:00 -- 用临时表
http://www.foxtable.com/help/topics/0696.htm
|
-- 作者:Bin -- 发布时间:2015/6/26 15:21:00 -- 把 find 改为SQLFIND 有具体的需求才有具体的答复. 请描述清楚你具体的问题是什么
|
-- 作者:blsu33 -- 发布时间:2015/6/26 16:06:00 -- BIN老师, SQLFIND 不是已经加载到本地的数据表,去查询; 我的意思 是数据表并没有加载 只是在数据源中, 红袍老师说的用SQL查询表 SQL查询表 中 FROM {表名} 是一个选项 不会是动态合成吧 再FOR EACH 例子是这样初始不加载所有表 职员档案中有一个人名 张三 他会在出库表 入库表 凭证表 销售表 .....出现在人员列 当删除这个人时 按照红袍老师 使用查询表 是不是这个意思呢 Dim vals As new List(of String)={出库表 入库表 凭证表 销售表 .....} 需要一个表名字符串 DIM dt as datatable FOR EACH val AS String in Vals 生成查询表 select f rom {"& val &"} where 人名列=\'张三\' dt=cmd.查询结果) if dt isnot nothing msbox("已在" & val & “中使用”,不能删除!") else continiue for next |
-- 作者:大红袍 -- 发布时间:2015/6/26 16:09:00 -- sql语句参考
Dim cmd As New
SQLCommand |
-- 作者:blsu33 -- 发布时间:2015/6/26 16:15:00 -- 老师, 要是这么写会不会耗时很多 Dim nms As new List(of String)={出库表 入库表 凭证表 销售表 .....} 需要一个表名字符串 这个块能否改进,不用写进去 Dim cmd As New SQLCommand cmd.ConnectionName = "User" for each nm as string in nms cmd.CommandText ="Select Count(*) F rom {Users} Where Name = \'" & nm & "\'" If cmd.ExecuteScalar > 0 Then Messagebox.Show("已经存在同名用户","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) exit for endif next
|
-- 作者:大红袍 -- 发布时间:2015/6/26 16:16:00 -- 你不加载表,就只有这种方法,耗时是肯定有一些的。 |
-- 作者:blsu33 -- 发布时间:2015/6/26 16:22:00 -- 老师, 想问问,到底表加载还是不加载,向老师问下,免得走弯路 原来都是在表中做,保存,然后更新数据源;后来SQL用的多了,发现,加载不加载好像也可以做,然后就不加载了; ![]() 应该怎么做是比较好呢 |
-- 作者:Bin -- 发布时间:2015/6/26 16:35:00 -- 这个只能够你自己权衡. |
-- 作者:大红袍 -- 发布时间:2015/6/26 16:50:00 -- 5以下是引用blsu33在2015/6/26 16:22:00的发言:
老师, 想问问,到底表加载还是不加载,向老师问下,免得走弯路
原来都是在表中做,保存,然后更新数据源;后来SQL用的多了,发现,加载不加载好像也可以做,然后就不加载了;
![]() 应该怎么做是比较好呢
用sql的话,就多了连接数据库的耗时;不用sql加载表和数据的话,打开系统的时候就会慢。
你权衡一下怎么弄吧。 |