以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]怎样把内部表转化为临时表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=4744)

--  作者:tianhe95
--  发布时间:2009/10/25 20:02:00
--  [求助]怎样把内部表转化为临时表
已经设计完成内部表,怎样把内部表转化为临时表
--  作者:e-png
--  发布时间:2009/10/25 20:12:00
--  
关闭项目时delete这个内部表即可。
--  作者:tianhe95
--  发布时间:2009/10/25 20:26:00
--  

原来是内部表,现在想做一个跟内部表一样的临时表

,表比较复杂能转换的话就简单多了
--  作者:lxl
--  发布时间:2009/10/25 20:31:00
--  

Dim dtb As New DataTableBuilder("新表")
For Each dc As DataCol In DataTables("原表").DataCols
    If dc.IsString Then  dtb.AddDef(dc.Name, GetType(String),dc.MaxLength)
    If dc.IsNumeric Then  dtb.AddDef(dc.Name, GetType(Integer))
    If dc.IsDate Then  dtb.AddDef(dc.Name, GetType(Date))
    If dc.IsBoolean Then  dtb.AddDef(dc.Name, GetType(Boolean))
Next
dtb.Build()

\'复制 默认值 表达式 禁止重复等信息
For Each dc As DataCol In DataTables("原表").DataCols
    With  DataTables("新表").DataCols(dc.Name)
        .Unique = dc.Unique
        .DefaultValue = dc.DefaultValue
        If dc.Expression <> "" Then
            .Expression = dc.Expression
        End If
    End With
Next


缺陷是没办法区分Integer 和double等数值列。。


--  作者:tianhe95
--  发布时间:2009/10/25 20:35:00
--  

谢了,有了基本结构,修改总比较方便些


--  作者:lxl
--  发布时间:2009/10/25 20:38:00
--  
以下是引用tianhe95在2009-10-25 20:35:00的发言:

谢了,有了基本结构,修改总比较方便些

坏了, 还是不行。。
代码生成的表不能保存


--  作者:lxl
--  发布时间:2009/10/25 20:49:00
--  
还是手动设计吧。再复杂的表也不会花太长时间吧。
--  作者:tianhe95
--  发布时间:2009/10/25 21:02:00
--  
用代码生成的临时表,在关闭项目后,将不复存在,我需要表存在于项目中,
--  作者:程兴刚
--  发布时间:2009/10/25 21:03:00
--  
以下是引用lxl在2009-10-25 20:38:00的发言:

坏了, 还是不行。。
代码生成的表不能保存


      他不是要的就是临时表吗?临时表本来就不能保存的!


--  作者:tianhe95
--  发布时间:2009/10/25 21:08:00
--  
看来只能慢慢手动设计