以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 复制表结构提示错误,见附件。 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=21065) |
-- 作者:tongyong1969 -- 发布时间:2012/6/29 12:44:00 -- 复制表结构提示错误,见附件。 运行的代码如下,连接的是外部数据源。 Dim Builder As New ADOXBuilder("ctais2") Dim tbl As ADOXTable Builder.Open() tbl = Builder.NewTable("xx") \'创建表 With tbl For Each dc As Data.DataColumn In DataTables("DJ_NSRXX").baseTable.Columns If DataTables("DJ_NSRXX").DataCols.Contains(dc.ColumnName) = False Then Continue For End If If dc.DataType Is Gettype(String) If dc.maxlength > 0 And dc.MaxLength < 256 Then tbl.AddColumn(dc.ColumnName, ADOXType.String, dc.maxlength) Else tbl.AddColumn(dc.ColumnName, ADOXType.text) End If ElseIf dc.datatype Is Gettype(Date) Then tbl.AddColumn(dc.ColumnName, ADOXType.DateTime) ElseIf dc.datatype Is Gettype(Boolean) Then tbl.AddColumn(dc.ColumnName, ADOXType.Boolean) ElseIf dc.datatype Is Gettype(Integer) Then tbl.AddColumn(dc.ColumnName, ADOXType.Integer) ElseIf dc.datatype Is Gettype(Long) Then tbl.AddColumn(dc.ColumnName, ADOXType.Long) ElseIf dc.datatype Is Gettype(Short) Then tbl.AddColumn(dc.ColumnName, ADOXType.Short) ElseIf dc.datatype Is Gettype(Byte) Then tbl.AddColumn(dc.ColumnName, ADOXType.Byte) ElseIf dc.datatype Is Gettype(Double) Then tbl.AddColumn(dc.ColumnName, ADOXType.Double) ElseIf dc.datatype Is Gettype(Single) Then tbl.AddColumn(dc.ColumnName, ADOXType.Single) ElseIf dc.datatype Is Gettype(Decimal) Then End If Next End With Builder.AddTable(tbl) \'增加表 Builder.Close() MessageBox.show("生成新表成功,将重新打开项目") syscmd.project.Open(ProjectFile)
|
-- 作者:狐狸爸爸 -- 发布时间:2012/6/29 14:26:00 -- 我写了一段简单的代码拉测试,木有发现问题:
Dim Builder As New ADOXBuilder("fff")
同样,你可以做个简单的有错误的例子发上来看看。 |