left join 语句的困惑

szAwei 2004-05-12 11:55:37
使用如下语句打开表:
select B.部门,A.* from 人员表 A left join 部门表 on A.部门ID=B.部门ID
当在这个表上删除记录时,如删除部门ID=1的记录,会把部门表中部门ID为1的记录同时删除!为什么会这样?如何避免?
请高手帮助!谢谢
...全文
39 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
我帮你
konhon 2004-05-12
  • 打赏
  • 举报
回复
建议试试 weizi2000(秋风啊) 的方法。
dongliu 2004-05-12
  • 打赏
  • 举报
回复
不要在这里面删除,用sql语句单独删除
楚人无衣 2004-05-12
  • 打赏
  • 举报
回复
试一下这个有没有用,加入后再删除看看:
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Text := 'select B.部门,A.* from 人员表 A left join 部门表 on A.部门ID=B.部门ID';
ADOQuery1.Open;
ADOQuery.Properties['Unique Table'].Value := '人员表'; {加入此代码}
...
szAwei 2004-05-12
  • 打赏
  • 举报
回复
ghyghost(爱国人士--海威思特) :我找不到,能否帮忙找找?拜托拜托!!
  • 打赏
  • 举报
回复
sql企业管理器中有一个先项,目的就是是否删除相关联的记录,找一找,我忘了在哪了。
szAwei 2004-05-12
  • 打赏
  • 举报
回复
我试了用 weizi2000(秋风啊)的方法还是会级联删除,难道就没有办法了吗?
我还以为是由于我在哪里没设定好,没想到问题竟是如此严重!
yutish2002 2004-05-12
  • 打赏
  • 举报
回复
直接用另外的删除了
这样删会删除另一个表,级联式,而且这样一般容易出错。
数字蛋糕 2004-05-12
  • 打赏
  • 举报
回复
学习
hewei2003 2004-05-12
  • 打赏
  • 举报
回复
up
fenght2004 2004-05-12
  • 打赏
  • 举报
回复
up

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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