When I make a table and create a field of type date in mysql, it stores date like 0000-00-00. Is it possible to change the format to \'d-m-Y\'?
No, it's not possible while keeping it as a date field. I suggest you keep it in that format - so you can use all mysql date functions - and change it only when you display it to the users.
You can either do it application side or directly with a query:
SELECT DATE_FORMAT(date_field, "%d-%m-%Y") FROM ...