My first answer is concept

not for special case, once you load the database tables into your dataset, forget the physical database, and when you add entry to the primary table, you add it into dataset, so get the last entry key from the main table by anyway from dataset, then use it to add entries in child tables, and when you finish your work on the dataset, reflect that changes.