多表更新问题

publicnews 2005-06-24 07:10:33
有三个表:产品资料,产品类别,产品单位

产品类别表结构:
产品类别代码 类别名称

产品单位表结构:
产品单位代码 单位名称

产品资料表结构:
产品代码 品名规格 产品类别代码 产品单位代码

需求:要在产品资料的维护FORM中对产品进行维护(添加\修改\删除产品资料)

因为要在维护时也显示 类别名称 和 单位名称 .所以要查询出的是多表的数据,我用以下方法查询:
select 产品资料表.代码,品名规格,产品类别代码,单位代码,产品类别表.产品名称,产品单位表.单位名称 from 产品资料表,产品类别表,产品单位表 where 产品资料表.类别代码=产品类别表.类别代码 and 产品资料表.单位代码=产品单位表.单位代码

对得到的这个数据集进行操作,可以添加和修改.只要先确认单位代码和类别代码是存在的即可,也可以修改.但问题出在删除这里,我只要删除一条产品记录,其相关的产品类别和单位在类别表和单位表中也被删除了.尝试过左连接等其它查询方式,均不能满足需求,请各位大侠能指点一条明路,这样的问题要怎么解决
...全文
99 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
elvis200_200 2005-07-16
  • 打赏
  • 举报
回复
对不起,我的做法只在php里实现过!原谅我的无知
publicnews 2005-07-04
  • 打赏
  • 举报
回复
只有用查询字段了,
不过不知道如何提高速度,把CursorType改为ctDynamic?
lovend 2005-06-25
  • 打赏
  • 举报
回复
直接用adoquery写 sql就可以实现多表更新了。帮你顶
publicnews 2005-06-25
  • 打赏
  • 举报
回复
問題解決好了後,高分答謝
publicnews 2005-06-25
  • 打赏
  • 举报
回复
各位可以說的清楚點嗎?謝謝了
merkey2002 2005-06-24
  • 打赏
  • 举报
回复
倒,楼上这位数据库才没学好哪.
楼主是用adoquery吧,不能那样查询,要直接用select * from 产品资料
然后类别名称 ,单位名称
用lookup字段来关联
elvis200_200 2005-06-24
  • 打赏
  • 举报
回复
数据库没有学好吧
产品资料表结构:
产品代码 品名规格 产品类别代码 产品单位代码 中
产品类别代码 产品单位代码是外键,是你自己的数据库设置错了
应该这样更好点
产品类别表结构:
产品类别代码 类别名称 产品代码

产品单位表结构:
产品单位代码 单位名称 产品代码

产品资料表结构:
产品代码 品名规格

2,498

社区成员

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

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