This paper examines the problem of adding non-deterministic constructs to a declarative database language based on Horn Clause Logic. We revise a previously proposed approach, the choice construct introduced by Krishnamurthy and Naqvi, from the viewpoints of amenability to efficient implementation and expressive power. Thus, we define a construct called dynamic choice, which is consistent with the fixpoint-based semantics, cures the deficiencies of the former approach, and leads to efficient implementations in the framework of deductive databases. Also the new construct extends the expressive power of Datalog programs considerably, as it allows to express negation under Closed World Assumption, as well as a class of relevant deterministic problems.