无法将数据表插入表单(访问项目)
Posted
技术标签:
【中文标题】无法将数据表插入表单(访问项目)【英文标题】:Cannot insert datasheet into form (Access Project) 【发布时间】:2009-06-23 09:33:14 【问题描述】:按照此处的说明进行操作:Insert a datasheet into a form 在尝试将查询作为数据表插入 Access 项目(SQL Server 2005 后端)时出现错误
您输入的表单名称不符合 Microsoft Office Access 对象命名规则
我从“源对象”的下拉列表中选择了视图View.dbo.viewname
,然后就发生了上述错误。如果我取消View.dbo.viewname
,它会保存,但是我看不到数据表数据。我想添加包含子数据表的视图。
用括号括起来,例如[View.dbo.viewname]
或 View[.]dbo[.]viewname
(因为显然不允许使用点,尽管链接另有说明)无济于事
【问题讨论】:
不知道这是否可行,因为 ODBC 数据源是特定于 PC 的,并且有大量潜在用户。因此,做一个访问项目而不是数据库的原因(没有外部依赖项)。我使用了 Access 提供的下拉菜单,然后它抱怨(这没有任何意义)。目前无权访问项目以进行检查。 另外,您可以使用 ODBC 链接表和数据表条目进行更新吗? 是否有任何非 ODBC 数据源的选项,可能直接使用 MS SQL。它真的不必是 ODBC。 是的,您应该可以通过 ODBC 进行更新。 【参考方案1】:这有点欺骗性; "Query.foobar" 可以,但 "Query.foo.bar" 不行。
MS Access 似乎使用第一部分来确定您的记录源是查询还是表,句点 (.) 是分隔符,您似乎仅限于一个时间>。这可能是对象名称中不允许使用它的原因之一。
看起来您是在直接访问视图,而不是在表选项卡/列表中创建指向视图的链接(您甚至不应该能够创建这样命名的表/查询)。也许这在 ms-access-2007 中可用,我对它还不够熟悉。
无论如何,我的解决方案是创建一个指向View.dbo.viewname
的表链接并将其重命名(如果MS Access 自己没有为您这样做)为dbo_viewname
。这将允许您将数据源设置为Table.dbo_viewname
。
编辑: 要创建表格链接,
-
转到数据库窗口上的“表”选项卡/列表
在列表中单击鼠标右键
选择
link tables...
将 Files of Type
更改为 ODBC databases
(我假设您已经设置了 ODBC 连接。如果没有,您如何获取数据?)。
切换到Machine Data Source
标签
选择您的数据源。
点击确定
选择您想要的表格/视图。
点击确定
链接将显示在您的表格选项卡/列表中,箭头指向绿色小球。
不要输入数据源。使用下拉菜单,这将保证您使用正确的语法。
【讨论】:
如何创建表格链接? 'Table.dbo.tablename'、'Table.tablename' 和 'tablename' 也都失败了(它让我把 'tablename' 放进去,但什么也没有出现) 这是一个访问项目 (ADP),因此没有 ODBC 数据源...想要为多个用户 (100+) 运行此项目,因此无法访问文件或机器数据源。可以在 Access 2007 和 2003 中打开 基本上,您需要找到一种方法将视图呈现给 MS Access,而无需在其名称中使用句点。即使在 ADP 中链接,您也应该能够重命名它们。 您一直说 ODBC 存在一些问题,但它没有。您不需要 DSN 即可从 Access MDB 链接到 ODBC 数据源——无 DSN 的连接工作得很好。【参考方案2】:从未设法让它工作。可能是因为是 Access Project (ADP) 而不是数据库 (MDB)。不得不求助于创建表单(带有嵌套的子表单)而不是数据表来获得我想要的。
此外,嵌套表单(向下两层)似乎在 Access 2007 中不起作用,但在 2003 中起作用,所以不得不回到那个状态。
【讨论】:
以上是关于无法将数据表插入表单(访问项目)的主要内容,如果未能解决你的问题,请参考以下文章
使用 NodeJS Express 时将表单数据插入 MySQL 数据库