以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 这样更改字段名称报错 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=118785) |
-- 作者:xxfoxtable -- 发布时间:2018/5/10 22:46:00 -- 这样更改字段名称报错 Dim t1 As Table = Tables("采购") If t1.Cols.Contains("型号") = True Then Dim Builder As New ADOXBuilder("bjgl") \'要指定数据源名称 \'Dim tbl As ADOXTable Builder.Open() With Builder.Tables(t.name) .RenameColumn("型号" ,"品名") End With Builder.Close() DataTables.unload("匹配出库|匹配出库临时|搜索匹配|搜索匹配临时|操作员档案|销售|采购") DataTables.Load("匹配出库|匹配出库临时|搜索匹配|搜索匹配临时|操作员档案|销售|采购") End If 错误提示:参数 @objname 不明确或所声明的 @objtype (column)有误。 |
-- 作者:有点甜 -- 发布时间:2018/5/10 23:03:00 -- 1、是不是这个代码导致的报错?
DataTables.Load("匹配出库|匹配出库临时|搜索匹配|搜索匹配临时|操作员档案|销售|采购")
注释掉看看
2、我这样测试正常
Dim t1 As Table = Tables("表A") |
-- 作者:xxfoxtable -- 发布时间:2018/5/16 22:02:00 -- With tbl .AddColumn("日期" ,ADOXType.DateTime) .AddColumn("说明" ,ADOXType.String, 12) .AddColumn("备注" ,ADOXType.String, 254) .AddColumn("操作员" ,ADOXType.String,12) End With 日期还是date 而不是datetime,有什么办法,变成datetime吗?
|
-- 作者:有点甜 -- 发布时间:2018/5/16 22:28:00 -- 设置列格式?
http://www.foxtable.com/webhelp/scr/1611.htm
|
-- 作者:xxfoxtable -- 发布时间:2018/5/16 23:05:00 -- Dim Builder As New ADOXBuilder("bjgl") \'要指定数据源名称 Dim tbl As ADOXTable Builder.Open() tbl = Builder.NewTable("日志") \'创建表 With tbl .AddColumn("日期" ,ADOXType.DateTime) .AddColumn("说明" ,ADOXType.String, 12) .AddColumn("品名" ,ADOXType.String, 60) .AddColumn("封装" ,ADOXType.String, 60) .AddColumn("备注" ,ADOXType.String, 254) .AddColumn("操作员" ,ADOXType.String,12) End With Builder.AddTable(tbl) \'增加表 Builder.Close() 执行到Builder.AddTable(tbl) \'增加表,报错:在对应所需名称或序数的集合中,未找到项目。
|
-- 作者:有点甜 -- 发布时间:2018/5/16 23:38:00 -- 我测试了一下代码,代码没问题。肯定不是你5楼报的错。 |
-- 作者:xxfoxtable -- 发布时间:2018/5/17 8:42:00 -- If Tables.Contains("日志") Then Else Dim Builder As New ADOXBuilder("bjgl") \'要指定数据源名称 Dim tbl As ADOXTable Builder.Open() tbl = Builder.NewTable("日志") \'创建表 With tbl .AddColumn("日期" ,ADOXType.DateTime) .AddColumn("说明" ,ADOXType.String, 12) .AddColumn("品名" ,ADOXType.String, 60) .AddColumn("封装" ,ADOXType.String, 60) .AddColumn("备注" ,ADOXType.String, 254) .AddColumn("操作员" ,ADOXType.String,12) End With Builder.AddTable(tbl) \'增加表 Builder.Close() DataTables.unload("日志") DataTables.load("日志") DataTables("日志").DataCols("日期").SetDateTimeFormat(DateTimeFormatEnum.DateTime) End If 这是全部代码,没看出来哪有问题
|
-- 作者:有点甜 -- 发布时间:2018/5/17 8:44:00 -- 这个代码有错
DataTables.unload("日志")
DataTables.load("日志")
DataTables("日志").DataCols("日期").SetDateTimeFormat(DateTimeFormatEnum.DateTime)
外部数据表(代码新建的),无法直接通过unload、load加入的
如果要加入,只能临时加入 http://www.foxtable.com/webhelp/scr/1279.htm
|
-- 作者:xxfoxtable -- 发布时间:2018/5/17 9:09:00 -- If Tables.Contains("日志") Then DataTables("日志").DataCols("日期").SetDateTimeFormat(DateTimeFormatEnum.DateTime) Else Dim Builder As New ADOXBuilder("bjgl") \'要指定数据源名称 Dim tbl As ADOXTable Builder.Open() tbl = Builder.NewTable("日志") \'创建表 With tbl .AddColumn("日期" ,ADOXType.DateTime) .AddColumn("说明" ,ADOXType.String, 12) .AddColumn("品名" ,ADOXType.String, 60) .AddColumn("封装" ,ADOXType.String, 60) .AddColumn("备注" ,ADOXType.String, 254) .AddColumn("操作员" ,ADOXType.String,12) End With Builder.AddTable(tbl) \'增加表 Builder.Close() End If \' \'\'\'升级增加缺少的字段 Dim t As Table = Tables("销售") If t.Cols.Contains("最近出货时间") = False Then Dim Builder As New ADOXBuilder("bjgl") \'要指定数据源名称 Dim tbl As ADOXTable Builder.Open() With Builder.Tables(t.name) .AddColumn("最近出货时间" ,ADOXType.Datetime) End With Builder.Close() Else DataTables("销售").DataCols("最近出货时间").SetDateTimeFormat(DateTimeFormatEnum.DateTime) End If 这样写的,还是报错
|
-- 作者:有点甜 -- 发布时间:2018/5/17 9:12:00 -- 每段代码单独测试;执行下面代码报什么错?
Dim Builder As New ADOXBuilder("bjgl") \'要指定数据源名称
Dim tbl As ADOXTable
Builder.Open()
tbl = Builder.NewTable("日志") \'创建表
With tbl
.AddColumn("日期" ,ADOXType.DateTime)
.AddColumn("说明" ,ADOXType.String, 12)
.AddColumn("品名" ,ADOXType.String, 60)
.AddColumn("封装" ,ADOXType.String, 60)
.AddColumn("备注" ,ADOXType.String, 254)
.AddColumn("操作员" ,ADOXType.String,12)
End With
Builder.AddTable(tbl) \'增加表
Builder.Close()
如果报【日志表已经存在】,那,说明你的外部数据库那里,已经存在日志表了。 |