So the database will be locked and the IntentService will fail, right?
If they perform operations at the same time on separate SQLiteDatabase objects, yes.
How an I achieve that, in these cases, the IntentService just waits for the Activity to finish the current operation (SELECT, UPDATE, etc.) and then runs normally?
Use a single SQLiteOpenHelper instance for both the activity and the service, whether via a singleton, custom Application object, or a ContentProvider.