Vba MS Access中的附件字段
我想更改一个表并创建一个带有类型附件的新字段 首先我想到了以下几点:Vba MS Access中的附件字段,vba,ms-access,attachment,Vba,Ms Access,Attachment,我想更改一个表并创建一个带有类型附件的新字段 首先我想到了以下几点: Dim SQL_Attachement_Str As String SQL_Attachement_Str = "ALTER TABLE tbl_FinalTable_summerized ADD CoCAttachement ATTACHMENT" DoCmd.RunSQL SQL_Attachement_Str Dim SQL_Attachement_Str As String SQL_Attachement_Str =
Dim SQL_Attachement_Str As String
SQL_Attachement_Str = "ALTER TABLE tbl_FinalTable_summerized ADD CoCAttachement ATTACHMENT"
DoCmd.RunSQL SQL_Attachement_Str
Dim SQL_Attachement_Str As String
SQL_Attachement_Str = "ALTER TABLE tbl_FinalTable_summerized ADD CoCAttachement TEXT"
DoCmd.RunSQL SQL_Attachement_Str
Dim tbl As TableDef
Set db = CurrentDb
Set tbl = db.TableDefs("tbl_FINALtable_Summerized")
tbl.Fields("CoCAttachement").Type = dbAttachment
Set tbl = Nothing
Set db = Nothing
但不幸的是(就我而言)这是不可能的
我的第二次尝试是,首先将字段创建为文本类型,然后将类型更改为附件,如下所示:
Dim SQL_Attachement_Str As String
SQL_Attachement_Str = "ALTER TABLE tbl_FinalTable_summerized ADD CoCAttachement ATTACHMENT"
DoCmd.RunSQL SQL_Attachement_Str
Dim SQL_Attachement_Str As String
SQL_Attachement_Str = "ALTER TABLE tbl_FinalTable_summerized ADD CoCAttachement TEXT"
DoCmd.RunSQL SQL_Attachement_Str
Dim tbl As TableDef
Set db = CurrentDb
Set tbl = db.TableDefs("tbl_FINALtable_Summerized")
tbl.Fields("CoCAttachement").Type = dbAttachment
Set tbl = Nothing
Set db = Nothing
因此,我需要的是一种将带有类型附件的字段添加到表中的方法
谢谢大家:D如果您不添加数据,只需添加一个字段,您可以始终保持简单,并在设计视图中添加该字段,不是吗 你刚刚激发了一些研究
currentdb.TableDefs("Table").CreateField("Attachment",dblongbinary)
如果不添加数据,只需添加一个字段,您可以始终保持简单,并在设计视图中添加该字段,不是吗 你刚刚激发了一些研究
currentdb.TableDefs("Table").CreateField("Attachment",dblongbinary)
如果有人在搜索这个问题的答案,这就有了窍门:
Dim fld As DAO.Field
Set fld = CurrentDb().TableDefs("MyTable").CreateField("NewField", 101&)
CurrentDb().TableDefs("MyTable").Fields.Append fld
CurrentDb().TableDefs.Refresh
Set fld = Nothing
其他复杂数据类型的FieldType值可在此处找到:
如果有人在搜索这个问题的答案,这就有了窍门:
Dim fld As DAO.Field
Set fld = CurrentDb().TableDefs("MyTable").CreateField("NewField", 101&)
CurrentDb().TableDefs("MyTable").Fields.Append fld
CurrentDb().TableDefs.Refresh
Set fld = Nothing
其他复杂数据类型的FieldType值可在此处找到:
不要将文本字段用于二进制数据。文本字段受字符集转换规则和验证的约束。二进制数据可能/将包含对字段使用的任何排序规则/字符集都无效的字节序列,并且可能/将被损坏。那么我该怎么做呢?我可以将不同的字段类型转换为附件吗?为什么需要代码解决方案?设计师是否因为某种原因而无法接受?它应该是自动化的。这就是问题所在。我的想法是将所有内容写入一个模块,然后运行它。该项目的要求是不必手动调整db.tbldefs(“tbl…”)。createfield(“CoCAtt..”,dblongbinary)不要将文本字段用于二进制数据。文本字段受字符集转换规则和验证的约束。二进制数据可能/将包含对字段使用的任何排序规则/字符集都无效的字节序列,并且可能/将被损坏。那么我该怎么做呢?我可以将不同的字段类型转换为附件吗?为什么需要代码解决方案?设计师是否因为某种原因而无法接受?它应该是自动化的。这就是问题所在。我的想法是将所有内容写入一个模块,然后运行它。该项目的要求是不必手动调整db.tbldefs(“tbl…”)。createfield(“CoCAtt..”,dblongbinary)不能用附件替换文本。它给出了一个错误。请尝试
OLE对象
,然后?您不能用附件替换文本。它给出了一个错误。请尝试OLE对象
,然后呢?