How to ensure that we can answer to all of this questions or at least most of this questions?
There is no way to be able to answer all questions you could receive. That requires infinite awareness, which no one has. Also, unlike a politician that must appear to be able to answer any question and, preferably, twist it for political advantage, your aim is for the organization and yourself to be successful.
That said, prepare answers likely questions in meeting. For example, if your meeting with your manager, he or she will likely be asking you about the status of your work, any impediments you have and where you have been successful. If you are meeting with a vendor, they likely want to push their product so know how it is being used, what is working well and what is not working well.
This requires knowing the people you are meeting with and what they want or need. If you are unsure and no agenda has been provided for the meeting, there is no problem with requesting some information beforehand. Otherwise, the meeting may be a waste of time for those involved.
How long should the preparation be? The preparation time and effort should be in proportion to the importance of the meeting. If you are in a daily scrum "stand up", there should be minimal if any preparation required. If you are proposing a company restructure to your CEO, I think no amount of preparation would be ideal.
Also, keep up with what is going on outside your team or group. For example, if the organization has just lost or gained a major client, a competitor has released a new product or the government has introduced new legislation affecting your industry, think about how these could impact you or your team.
That said, it is perfectly fine to say "That is a good question. can I get back to you?" Admitting you do not know everything and following up with the answer is much better than throwing out a badly thought through or incorrect answer. Such an answer may come back to haunt you if the business makes important decisions based on it.
However, answering questions is not the only way to appear knowledgeable and competent. Be an expert in the areas you are meant to be an expert in. For example, if you are a software developer working on a system, be prepared for questions like "How long would it take to add feature X" or "If we increased customers by 25%, would our system handle it?".
Similarly, have questions you want answered. If you are meeting with your boss, ask about the things he/she agreed to follow up for you last time. Remember that information can flow both ways and working with your coworkers to achieve goals is the point of having teams.