You don't have any delay in your code. For example in this line
db<=x"4D",x"41",x"58",x"49",x"4D",x"55",x"4D",x"20 ",x"5A",x"4F",x"4E",x"45";
the synthesizer will just see that you assign all those values to db successively with no delay, and will just simplify it to
db<=x"45";
You need to add a clock input to your process and do things in sequence, for example by using a state machine, a counter to know which data word to send next, and possibly another counter to implement delays. The LCD datasheet should tell you how much you will need to wait between two states.