为什么我添加不了数据

xz820127 2007-12-18 03:54:00
我在access里建立了两个表,并进行关联
Adodc1.RecordSource = "SELECT * FROM X1 as A, X2 as B where (A.XX = B.XX) "
现在出现的问题是当我想向表里面添加数据的时候,总会提示“在对应所需名称或序数的集合中,未找到项目” 主要是程序运行到 Adodc1.Recordset("关联字段") = ""时出现的问题
代码如下:
Private Sub Command1_Click()
Adodc1.Recordset.AddNew
Adodc1.Recordset("字段1") = ""
Adodc1.Recordset("关联字段") = ""
Adodc1.Recordset.Update
Exit Sub
End Sub
哪位好心的帮忙解决一下啊,这个问题困扰我两天了,是不是主键设置的问题,我两个表都设置为ID自增主键

...全文
97 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
w3k 2008-01-13
  • 打赏
  • 举报
回复
................老大
你新增到哪个表啊?
嘎嘎噶个
Tiger_Zhao 2007-12-19
  • 打赏
  • 举报
回复
对RecordSet来源是多表查询的,进行数据增删改结果是不确定的!
应当按of123的做法单表操作,然后刷新RecordSet。
lizhongheng 2007-12-19
  • 打赏
  • 举报
回复
对于跨表查询不能直接插入数据,只能将数据放入一个表中才行
xz820127 2007-12-19
  • 打赏
  • 举报
回复
5楼的这样子不行啊,插入之后总是提示“索引或主关键字不能包含一个空值”怎么回事啊
xz820127 2007-12-19
  • 打赏
  • 举报
回复
有没有人知道的啊
xz820127 2007-12-18
  • 打赏
  • 举报
回复
能否说的再清楚一些阿
因为我现在删除也出现了类似的问题
adodc1.recordset.delete就会出现"无法更新定位行。一些值可能已在最后一次记取后已更改"。
of123 2007-12-18
  • 打赏
  • 举报
回复
Adodc1.Recordset.ActiveConnection.Execute "Insert Into X1(字段1) Values('')"
Adodc1.Recordset.ActiveConnection.Execute "Insert Into X2(关联字段) Values('')"
of123 2007-12-18
  • 打赏
  • 举报
回复
因为你使用了跨表查询,数据库引擎还没有智能到区分将记录插入到哪一个表中。假定你这里的两个字段分别在两个表中,这样即可:

Adodc1.Recordset.ActiveConnection.Execute "Insert Into X1(字段1) Values('')" Adodc1.Recordset.ActiveConnection.Execute "Insert Into X2(关联字段) Values('')"
moyifeng 2007-12-18
  • 打赏
  • 举报
回复
这个问题我遇到过,用ADODC操作,还差一个步骤。具体的我现在也不知道。
明天回公司我找找,再回复你
daisy8675 2007-12-18
  • 打赏
  • 举报
回复
用ado去做。adodc这东西算是害人不浅

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧