以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]动态列表项目  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=93025)

--  作者:baiheinet
--  发布时间:2016/11/18 15:49:00
--  [求助]动态列表项目


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20161118151523.png
图片点击可在新窗口打开查看

这是个动态列表项目

表 列 也是列表项目

代码

 

    Dim lst As List(Of String)
    lst = Connections("SQL").GetTableNames
    Dim s As String
    For Each t As String In lst
        s = s & "|" & t
    Next
    Tables("项目").Cols("表").Combolist = s
 
如何  列 这一列

 

也能根据表名称 自动获取相应的列明 变成下拉列表

[此贴子已经被作者于2016/11/18 15:50:01编辑过]

--  作者:有点蓝
--  发布时间:2016/11/18 16:22:00
--  
1、如果表已经加载,参考:http://www.foxtable.com/webhelp/scr/1428.htm


查询返回一个空表,然后按照第一点的方法获取

--  作者:有点蓝
--  发布时间:2016/11/18 16:25:00
--  
sqlserver可以使用一下sql返回所有的表和列名称

SeLECT 
表名= convert(varchar(50), d.name ),
字段名= convert(varchar(100), a.name),
类型= CONVERT(varchar(50),b.name) + \'(\' + CONVERT(varchar(10),a.length/2) + \')\',
字段说明=convert(varchar(50), isnull(g.[value],\'\')),
必填 = case a.isnullable when 1 then \'否\' else \'是\' end
FROM dbo.syscolumns a
left join dbo.systypes b on a.xusertype=b.xusertype
inner join dbo.sysobjects d on a.id=d.id and d.xtype=\'U\' and d.name<>\'dtproperties\'
left join dbo.syscomments e on a.cdefault=e.id
left join sys.extended_properties g on a.id=g.major_id and a.colid=g.minor_id
left join sys.extended_properties f on d.id=f.major_id and f.minor_id=0
--where d.name =\'WeChatSeeingRules\'
where a.name not in( \'_Identify\',\'_Locked\')
order by d.name