There is many brands out there offering from "complete" to "breed specific", from poor to high quality but sometimes no matter what, the food doesn't sit well with the dog. This doesn't mean you should rush to get new food or another brand, this can produce worse effects as a dog's digestion is slow and new foods have to be gradually introduced with the current diet.
As a base diet, dry food is a must and the amount adjusted to weight, activity, age of the dog. If your dog isn't eating much try adding some cooked vegetables to give it some flavour or adding some warm water to make it moist and easier to eat.
Avoid give dogs any table scraps from your food as this can lead to behavioural problems. Instead you can keep them to add some to your dogs next meal - remember to make sure it's cooked food and that it's a reward, not a given right.
Fresh water must be available all the time in the house for the dog. As much as some dogs may persist to try human drinks, it's to be avoided.
If your dog turns it's nose up at food laid down for them, take it away and give it to them later on. The dog may not be hungry - mainly with smaller breeds they may not need as much as recommended - but if have became picky with food, they'll soon learn what is theirs when they become more hungry.
Finally, a set routine is the best thing for a dog. Once they are into the routine, they'll become less anxious about food and more comfortable in and out the house.