这是我用于sql查询的表结构:
SONGS MEDIA
id id
track song_id
artist source
added_on url
如何插入歌曲(曲目,艺术家,added_on,来源,网址)? MEDIA.SONG_ID必须是正确的SONGS.ID
MEDIA.ID and SONGS.ID
是主要和自动增量。
有人知道怎么做吗?
答案 0 :(得分:1)
在标准SQL中,您将使用事务以及ID序列上的nextval
和currval
函数:
BEGIN
INSERT INTO songs VALUES(nextval('songs_id_sequence'), ...);
INSERT INTO media VALUES(nextval('media_id_sequence'), currval('songs_id_sequence'), ...);
COMMIT
答案 1 :(得分:0)
1)第一个选项
你可以插入SONGS,获得歌曲ID,然后插入MEDIA http://dev.mysql.com/doc/refman/5.0/en/getting-unique-id.html
2)第二个选项
使用可更新视图(构建在这两个表之上) http://dev.mysql.com/doc/refman/5.1/en/view-updatability.html
3)第三个选项
使用与第一个选项类似的逻辑的存储过程