I am populating a spinner from the database like this
// Populating the City Spinner
Cursor cities = db.cityList();
startManagingCursor(cities);
I think, as you are using a customadapter and giving three lists in adapter...
you can't get the selected text simply by calling the getSelectedItem()..
Use this:
Spinner mySpinner = (Spinner)findViewbyId(R.id.spinner);
int position = mySpinner.getSelectedItemPosition();
String Text = yourCityList[position].toString(); // dont know which list is holding the city list...
// i didn't use any db in any of my app so cant tell you how can you get list...
// leaving it to you... :)
Hope it helps....