Methods may vary. For one i have been involed in the template stays the same and the variable passed is used to get the information out. You may need to include a bit of IF empty do nothing else echo variable to avoid strange looking blank spaces. If you want different colours or looks for each section that is fine also. Depends what you want.
It looks like the first one is the way in which you will be doing it but the second hase been rewritten using the rewrite module, but that is a different beast right now.
If you want to keep the URL parameter name down to a minimum you dont have to call it the name of the DB feild. There is nothing to stop you calling it id=
When I first developed my site, I used the form www.mysite.com/artist.php?id=1 However I felt it looked better (and probably crawled better) if I used the form www.mysite.com/artista/1/artist_name.html
To get to the second form is not difficult at all, just added a rewrite rule for this domain: