我正在尝试在我的 SQL 查询中创建一个“动态”字段
INSERT INTO tblCARS (CreateField("[tblCARS]","[colors]","TEXT"))
SELECT avail_colors
FROM tblSHOPS
WHERE car_model = model_car;
这应该给我相同的结果
INSERT INTO tblCARS (colors)
SELECT avail_colors
FROM tblSHOPS
WHERE car_model = model_car;
字段 [colors] 不存在,因此我想在运行查询时将其附加到名为 [tblCARS] 的现有表中。
函数CreateField()
看起来像这样
Public Function CreateField(strTable As String, strField As String, strType As String) As Variant
CreateField = Null
If (strField <> vbNullString) And (DoesTblFieldExist(strTable, strField) = False) Then
CurrentDb.Execute "ALTER TABLE " & strTable & " ADD COLUMN " & strField & " " & strType
End If
CreateField = strField
End Function
当我运行查询时,Access 给了我错误“不正确的语法”(已翻译),并且光标停在第二个括号处。
有没有人成功地在运行时在 Access 查询上创建字段?
我知道我可以完全在 VBA 上做到这一点,但这不是我的目标。
有什么提示吗?