我正在尝试将记录添加到Access表(超链接)中,并且字段“ link”应设置为“ u:\ directory here \” 我尝试过
docmd.runsql "insert into hyperlinks (link."U:\directory here\")"
并得到错误,我尝试用'代替“,然后尝试不使用引号,但都以错误的结尾而未指明错误之处。
答案 0 :(得分:1)
我建议:
docmd.runsql "insert into hyperlinks (link) values ('U:\directory here\')"
可以在here中找到MS Access SQL insert
语句的语法。
答案 1 :(得分:0)
如果您的字段是Hyperlink
类型(而不是text
类型),则您的SQL需要使用以下格式:
Display Text#Link Path#Sub address#optional screen tip#
如果只需要链接路径(例如https://google.com
),只需将其用#
括起来:
INSERT INTO tHyperlinks (path) VALUES ("#https://google.com#")
可以找到更多信息here
我个人不喜欢在Access中使用Hyperlink
数据类型:我发现使用简单的文本字段并在表单中生成超链接会更容易。
此外,我建议不要使用DoCmd.RunSQL
。每当您使用此方法时,除非您将其关闭,否则用户都会看到一条确认消息(允许他们取消更新):
要关闭此确认,您必须执行以下操作:
DoCmd.SetWarnings False
DoCmd.RunSQL yourSQL
DoCmd.SetWarnings True
更糟糕的是,如果用户更改了选项以默认情况下不显示这些确认,则将显示确认(当他们明确表示不想查看时)。
最好在DAO库中使用Database.Execute
方法:
Dim db as DAO.Database: Set db = CurrentDB
db.Execute yourSQL, dbFailOnError
用户将不会收到确认消息(无论其客户端设置如何),并且使用dbFailOnError
,如果未添加记录,则会生成错误,这将为您提供详细的详细信息(以下错误是我删除括号后的错误):
然后您可以执行错误处理。
有关DoCmd.RunSQL
与Database.Execute
的更多信息,请参见these links。
您可能会发现有用的Microsoft官方文档页面: