我在这里有一个奇怪的,我似乎无法搞清楚 .
My Access前端项目在SQL 2005 express后端上运行 .
我一直在使用驴子的子表格,这是我没有将应用程序迁移到VB / VS前端的唯一原因 .
但是,由于升级到Access 2010,我无法使用子窗体 . 相反,当我尝试添加一行时,我收到以下错误(数据已添加到数据库中,但数据不会显示在表单中,因为它不满足基础记录源中的条件 . ):
主表单和子表单在poid和PONo上链接 .
我已经从头开始创建了所有默认值的表单,但问题仍然存在 .
我的SQL表是
购买: - - poid,int,PK,Identity,seed 1,inc 1 supplierID,int orderdate,DateTime deliverydate,datetime ordersent,bit ordercomplete,bit initials,nvarchar supplierinvoiceno,nvarchar branchid,int bookedin,bit deliverycharge,money
[股票 - 详细信息]: - - stockid,int,PK,Identity,Seed 1,inc 1 CodeID,int service,bit costprice,money PONo,int Instock,bit SerialNo,char StockTake,bit Branch,Char ProductID,int
任何帮助将非常感谢 .
非常感谢,
安倍晋三
1 回答
解决了! Access 2010不支持具有相同列名的多个表,除非它位于SQL Server上的存储过程/查询中 .
我一直试图摆脱存储过程和查询,但A2010不会,在任何组合下使用硬编码SQL作为记录源 .
一旦我创建了一个查询并将其选为记录源,子表单就可以完美地按预期工作 .
此外,如果未在查询中选择,我必须为两个表中具有相同名称的任何字段设置别名 . 是的,Alias也只在查询中工作!
我爱微软! ;-)