Nifft has some great advice on ENWorld for dealing with players who like to change characters a lot. Specifically, let them, but take their preferences into account. For such players, just don’t involve their characters as heavily in the plot of the game. If there aren’t any major plot points or threads resting on the character, there’s not much to be disrupted when they want to switch to a new one.
The same idea can be used for players who are less reliable in terms of showing up for games. There aren’t many things as frustrating as ending at a cliffhanger involving one of the PCs, only to have his player not show up for the next session.
Another idea I had a long time ago, since I’m one of those players who grows bored with a PC very quickly, was to offer to be anything the GM might need. I’d switch to whatever character he’d need whenever he needed me to. A priestess from a temple, a guide to the mountains, etc. It’s a bit of a double-edged– one of the caveats was that I not be required to play the same character more than a couple sessions, but on the other hand if I did find a character I enjoyed I’d have to be willing to give it up when the GM needed me.
I suggested this idea to a friend who was starting a game and he literally hugged me. Unfortunately, never actually got to try it out, as the campaign never got off the ground. But as a GM who was quite… down on my short attention span for characters, if he could get excited about the idea I think anyone could.