If you think you have spoiled her, then most likely you have. No child is perfect and should not be expected to be, but if you are uncomfortable with her behavior and I could see why you would be, re-think your actions and reactions to her.
You must be consistent with the behavior you ask of her, so she knows her limits. If you allow her to walk around while eating at home or get up from the table when she wants, you can not expect her to know "the proper time" for this behavior. She's still young. If going out to dinner is the main problem you have with her try pretending at home that you are in a restaurant. Show her how a little princess eats, make it a game and reward her for her good behavior, nothing big- it could be extra hugs and kisses, etc. You can all get dressed up "fancy" whatever she would enjoy and get her interested in the idea. Pretend every night at dinner time and then try it out at a restaurant.
If the behavior is at all times, then you have to look at why she is acting that way. Again consistency is the key if you act like x, you are going to get y. She is not to young to understand. I have 4 children and believe me children know you better than you know yourself - all they do is check out your behaviors and reactions all day. Don't be afraid of time out, she would only get one or two minutes (its supposed to be a minute for every year old the child is), but it serves the purpose that you mean what you say.
I am not a big "believer" in terrible twos as I think it is more of an age where they are testing their world to see how things work. Its up to you if its going to be terrible or not.
Work WITH your daughter so you can both enjoy your time together. Learn her personality, know her likes and dislikes and plan for it.
May you continue to be blessed with patience and love!
A.