Oracle is good if you can afford it. I'd go as far to say that it's probably the best out there.
MySQL certainly should be cheap. It's free (under certain licences) 😃
Although I've created web apps using ASP and Access, I am trying to move away. SQL server is so much faster, but its a bit of a hassle to set up a db every time I wanna do a small site, so I use Access. I would (personally) never use Access with PHP.
I've never used XML for a db. I guess it's just cos I don't know enough about it and nothing has come up where its necessary atm.
For choice, it would have to be MySQL every time.