다음과 같이 나는 두 개의 테이블이 있습니다SQL 서버 - BEFORE INSERT 트리거
표 1 '의 MySkills'[기본 키 (EMPID, SkillId)]
+----------+------------+---------+----------+-----------+------------+-----------------+----------------+
| EmpId | CategoryId | SkillId | ExpYears | ExpMonths | Experience | RatingSubmitted | RatingApproved |
+----------+------------+---------+----------+-----------+------------+-----------------+----------------+
| CSSL9610 | arcgis | arcgis1 | 0.00 | 0.00 | 0.00 | 1.00 | NULL |
| CSSL9610 | arcgis | arcgis2 | 0.00 | 0.00 | 0.00 | 0.00 | NULL |
| CSSL9610 | arcgis | arcgis3 | 0.00 | 0.00 | 0.00 | 0.00 | NULL |
| CSSL9610 | arcgis | arcgis4 | 0.00 | 0.00 | 0.00 | 0.00 | NULL |
| CSSL9610 | arcgis | arcgis5 | 0.00 | 0.00 | 0.00 | 0.00 | NULL |
| CSSL9610 | arcgis | arcgis6 | 0.00 | 0.00 | 0.00 | 0.00 | NULL |
| CSSL9610 | arcgis | arcgis7 | 0.00 | 0.00 | 0.00 | 0.00 | NULL |
+----------+------------+---------+----------+-----------+------------+-----------------+----------------+
그리고 표 1 '의 MySkills_details을'[기본 키를 (EMPID)]
+-------+------------------+---------------+----------------+--------+---------------+---------+------------+
| EmpId | Experience_Prior | Qualification | Specialization | Status | LastSubmitted | NextDue | ApprovedOn |
+-------+------------------+---------------+----------------+--------+---------------+---------+------------+
는 지금 MySkills_details에 데이터가 없습니다. MySkills의 EmpId를 참조하는 EmpID의 외래 키를 만들어야합니다. 이는 MySkills의 복합 기본 키로 인해 불가능합니다. 그래서 나는 다른 방향으로 가기로 결정했습니다. 삽입이 MySkills에서 먼저 발생하고 SQL Server에 BEFORE INSERT 트리거가 없다는 것을 제외하고는 알고 있습니다. 그래서 MySkills에 삽입하기 전에 먼저 MySkill_details에 데이터를 삽입하는 BEFORE INSERT와 같은 트리거를 작성하는 방법.
나는 이해하지만, 변경하고 기존 응용 프로그램에 일부 기능을 추가하려고합니다. – ShyProgrammer
만약 내가 최대 였다면, 나는 스킬 테이블에 ID 컬럼을 추가했을 뿐이므로 복잡한 복합 키를 피할 수 있었을 것입니다. – ShyProgrammer
삽입 할 코드를 제안하고 조정할 때 트리거를 생성하여 원하는 것을 얻을 수 있었습니까? MySkills 테이블의 데이터가 응용 프로그램의 비트. 많은 감사 :-) – ShyProgrammer