我有兩個表。 msUser和msUserChar。我創建了msUser和msUserChar之間的關係,其中msUser中的PK是msUserChar中的FK當TableA記錄被創建時,MySQL自動將記錄插入到TableB中
我需要的是將記錄插入到msUser中時,還會在msUserChar中創建一條記錄,其中FK是從msUser。
我試過使用約束,更新級聯和各種其他關係方法。我知道,我可以使用Last_Insert_Id方法,或者使用事務性的mysql,並且只在兩個記錄都被創建時才提交。不過,我想知道,如果有辦法以關係的方式來做到這一點。
基本上,用戶必須有一個字符。所以當用戶表插入記錄時,會在用戶角色表中創建相關記錄。
的要求,這裏的表中描述:
+-----------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------------+------+-----+---------+----------------+
| _msId | int(10) unsigned | NO | PRI | NULL | auto_increment |
| msUser | varchar(25) | NO | | NULL | |
| msPass | varchar(30) | NO | | NULL | |
| msSecret | varchar(30) | NO | | NULL | |
| msEmail | varchar(45) | NO | | NULL | |
| msAccType | int(2) | NO | | NULL | |
| msLastLog | datetime | YES | | NULL | |
+-----------+------------------+------+-----+---------+----------------+
+---------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+------------------+------+-----+---------+----------------+
| _msCharUserID | int(10) unsigned | NO | PRI | NULL | auto_increment |
| _msId | int(10) unsigned | YES | MUL | NULL | |
| _msCharID | int(10) unsigned | YES | MUL | NULL | |
| msChar_1 | int(10) | YES | | NULL | |
| msChar_2 | int(10) | YES | | NULL | |
| msChar_3 | int(10) | YES | | NULL | |
+---------------+------------------+------+-----+---------+----------------+
請形容這兩種 –
上第一臺 –
@MySQLRockstar插入後事件創建觸發器的表中的列,請查看更新的問題。 @M khalid Junaid,我知道我可以使用觸發器,但狡猾的是,利用內置於mysql中的關係有更好的方法嗎? –