Specifying and Computing Causes for Query Answers in Databases via Database Repairs and Repair Programs