首页 > 解决方案 > 使用查询插入 MS-Access 关系数据库的最佳方法

问题描述

假设我们在 MS-Access(image) 中有一个关系数据库。在此处输入图像描述

我们有 4 个表和与彼此相关的表相关的列。

我知道我们可以像这样插入:

INSERT INTO Project ( ProjectName, ProjectID, FK_Employee, FK_Department )
    SELECT 'Project1' AS Name, '99950' AS ID, Employee.ID, Department.ID
    FROM Department, Employee
    WHERE (((Employee.employeeName)=@employee) AND ((Department.DepartmentName)=@Dept));
  1. 但是有没有更好的方法呢?我知道我们可以Select使用不同类型的 Join。这是有意义的还是有办法使用 Join 和插入?

  2. 当外键是可选的时,我遇到了这种查询的问题。我的意思是,如果我将此查询用于我的 VB/ADO.Net,并且如果我发送DBNull.Value它不会创建新行或在此处输入图像描述

In precise.
  1. 假设我在项目创建期间没有保存任何员工。所以,我的 FK_Employee 是空的。现在,我想在Employee表中插入一个新员工,并更新Project表中的外键,其中ProjectName是“Project1”。是否可以在一个查询中完成?如果不是,我如何在Employee表中插入值,然后读取自动递增的 ID 并将其更新为ProjectVB/ADO.Net 中的表?(用C#回答也可以)。

我真的被困在这里了。如果有人知道答案,请帮助我摆脱这种情况。我真的很感谢你的好意和帮助。先感谢您。

标签: sqlms-accessado.netms-query

解决方案


推荐阅读