Bueno, es obvio que tienes que hacer dos tablas, en la primera los paises, con su respectivo indice, así:
Paises
id: indice principal entero
nombre: cadena (50)
Ciudades
id: indice entero
pais: indice foraneo entero
nombre: cadena (50)
Se supone que en la tabla cuidades deben estar registrados las ciudades con su respectivo indice del país al cual pertenece, el campo de este índice es pues "pais".
Bueno, cuando se seleccione un pais entonces se supone que con el control select el valor del indice de cada pais debe ser el value de cada option, como como?
asi:
<option value="1">Argentina
No soy argentino, pero le puse ese país, porque es el primer país en orden alfabético sudamericano, entonces tendría el índice 1. Bueno, entonces si seleccionas ese país, se obtiene su índice, con ese índice haces una consulta para obtener todos las ciudades que tiene como índice foráneo "pais" el valor que se ha seleccionado. La sentencia SQL sería más o menos así:
Select * from cuidades where pais = id
donde id, es el índice del país seleccionado.
Espero que te sirva.