The LORD swore to David a sure oath
from which he will not turn back:
“One of the sons of your body
I will set on your throne.
If your sons keep my covenant
and my testimonies that I shall teach them,
their sons also forever
shall sit on your throne.” (Psalm 132:11-12)
God promised King David that his throne will always be filled by one of his descendants for all time. If you look at the current state of Israel, you will see they do not have a king. So does that mean God did not keep His promise. Not at all.
God was promising a descendant of David to be on the throne, but the descendant God had in mind since the beginning of time was Jesus Christ. Tim Keller wrote, "Jesus, the greater David, has indeed come, and he has brought the presence of God into our lives-making us the dwelling place not because we have worked and earned it but because we were chosen by grace."
The Bible says that God is not slow in keeping His promises. The problem is we want to rush God. We think God should operate on our timetable and that is not always the case. The nation of Israel waited a long time for their Messiah to come and He did. However, He did not come in a way they expected.
The good news of the Christmas story is we see the promise of God fulfilled by Christ taking the throne in heaven. God kept His promise to David. Since God kept His promise, He will keep all the promises He has made as the inspired word has told us.