Sealant for dining table

Submitted to Product Chat

A couple of years ago I painted my dining table and sealed it with a water-based sealant. I gave the table 3 coats of sealant (allowing 24hr drying time for each coat) and within 4 months my youngest spilled mac and cheese and left it on the table for 20 mins. When I realized what had happened the yellow stained the table. A couple of months later a friend spilled vanilla extract on the table and it also stained the table as well. I plan on repainting the table top but can you recommend a sealant for a dining table that can withstand stains better. I don't want to use oil base just in case I want to repaint. Thank you for your help.