我正在尝试更改刚刚通过VBA添加的字段的默认值。我在下面添加了这行代码,但是由于某种原因,它说该项目不在集合中,我真的很困惑为什么。任何帮助将不胜感激!
AddColumn = "ALTER TABLE ShouldImportMetricsIDsTable " & _
"ADD COLUMN [ImportStatus] TEXT"
db.Execute AddColumn
CurrentDb.TableDefs("ShouldImportMetricsIDs").Fields("ImportStatus").DefaultValue = "No"
我还添加了添加字段的行。
答案 0 :(得分:3)
您刚刚在引用ALTER TABLE
的{{1}}和VBA代码ShouldImportMetricsIDsTable
中指向了不同的表格。
P.S。内置ShouldImportMetricsIDs
属性,因此您可以轻松设置其值
DefaultValue
但是其他一些字段属性很奇怪,所以你必须使用这样的结构:
CurrentDb.TableDefs("ShouldImportMetricsIDsTable").Fields("ImportStatus").DefaultValue = "No"
答案 1 :(得分:1)
我认为您可以将默认值添加到ALTER TABLE
表达式:
CurrentProject.Connection.Execute "ALTER TABLE ShouldImportMetricsIDsTable " & _
"ADD COLUMN [ImportStatus] TEXT" & _
"DEFAULT ""No"";"
我的答案是基于这个问题:SQL SET DEFAULT not working in MS Access
编辑:看看HansUp在该链接中的答案,我编辑了上面的答案,以反映他在那里使用的语法。我希望这适合你。