无法将数据表插入表单(Access Project)

时间:2009-06-23 09:33:15

标签: sql-server sql-server-2005 ms-access ms-access-2007

按照此处的说明进行操作: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(因为显然不允许使用点,但链接暗示其他情况)无效

2 个答案:

答案 0 :(得分:0)

这有点欺骗性; “Query.foobar”没问题,但“Query.foo.bar”不是。

MS Access似乎使用第一部分作为判断您的记录源是查询还是表的方式,并且句点(。)是分隔符,并且您似乎仅限于一个。这可能是对象名称中不允许它的原因之一。

看起来您正在直接访问视图,而不是在表选项卡/列表中创建指向视图的链接(您甚至不能创建一个名为这样的表/查询)。也许这在ms-access-2007中可用,我对它不太熟悉。

在任何情况下,我的解决方案是创建一个到View.dbo.viewname的表链接,并将其重命名(如果MS Access不为您自己执行)到dbo_viewname。这样您就可以将数据源设置为Table.dbo_viewname

修改
要创建表链接,

  1. 转到数据库窗口的“表格”选项卡/列表
  2. 右键单击列表
  3. 选择link tables...
  4. Files of Type更改为ODBC databases(我假设您已经设置了ODBC连接。如果没有,您是如何获取数据的?)。
  5. 切换到Machine Data Source标签
  6. 选择您的数据源。
  7. 点击确定
  8. 选择所需的表格/视图。
  9. 点击确定
  10. 链接将显示在表格选项卡/列表中,箭头指向绿色小球。

    请勿输入数据源。使用下拉菜单可以保证您使用正确的语法。

答案 1 :(得分:0)

从未设法让它发挥作用。也许是由于是一个Access Project(ADP)而不是数据库(MDB)。不得不求助于创建表单(使用嵌套的子表单)而不是数据表来获得我想要的内容。

此外,嵌套表单(两个级别向下)似乎在Access 2007中不起作用,但在2003年也是如此,所以不得不回到那个。