Recommendation systems are popping up everywhere due to the abundance of their practical applications. However, most recommendation methods are "hard-wired" into the system and they support only predefined and fixed recommendations, which may not always capture the real-time user information needs. In this paper, we propose FlexRecs, a framework for flexible recommendations over relational data. With FlexRecs, a given recommendation approach can be expressed as a high-level workflow. The workflow may contain traditional relational operators such as select, project and join, but in addition, it may contain new recommendation operators that generate or combine recommendations. The workflows can easily represent both content-based and collaborative recommendation approaches, as well as new types of recommendations. Furthermore, we describe a prototype system for processing FlexRecs workflows on top of a relational database, which is used as part of a course planning tool. Finally, we present experimental results from a preliminary performance evaluation of the working system. They show that it is easy to create novel workflows with FlexRecs and that system performance is reasonable even for complex workflows.