我必须为地址插入创建触发器或存储过程。此地址插入可以在多个表上。我对触发器和存储过程了解不多,所以我可以使用一些帮助。
请参阅此处了解数据库架构:
这是荷兰语,所以这里有一些翻译:
我必须创建一个存储过程/触发器,限制在表ADDRESS
,STREETPART
和CITY
中插入/更新。只有在下表中插入/更新时才能插入/更新这些表:COMPANY
,DEPARTMENT
,DEPARTMENTVISITINGADDRESS
,CUSTOMER
或EMPLOYEE
。
我也不知道如何限制这一点。
由于当前的外键结构(我无法更改),在ADRESS
,STREETPART
和CITY
表中必须有匹配的地址才能在下表中进行插入:COMPANY, DEPARTMENT, DEPARTMENTVISITINGADDRESS, CUSTOMER, EMPLOYEE
。
所以结构必须是这样的:用户在下表中插入:COMPANY, DEPARTMENT, DEPARTMENTVISITINGADDRESS, CUSTOMER, EMPLOYEE
。但是在插入其中一个表之前,必须首先在表CITY
中插入插入(仅当城市尚未存在时),STREETPART
和{{1} }。
首先必须检查插入的邮政编码+ housenumber是否有效。我有一个外部邮政编码数据库,如果组合邮政编码+ housenumber有效,可以检查。下面的代码代表:
ADRESS
如果组合邮政编码+ housenumber有效,必须检查城市是否已经在CITY表中。如果是,则必须将与邮政编码匹配的州名和城市插入到CITY表中(城市名称和州名称也在外部邮政编码数据库中)。之后,必须在STREETPART表中插入一个插入(邮政编码的街道名称也在外部邮政编码数据库中)。之后,必须在ADRESS表中进行插入。最后一步是在原始插入表格中插入:公司,部门,部门访问地址,客户或雇员。
感谢您的帮助!