It is a perfectly valid case to have no data as the output of database resource resolution.
It seems the reasoning for CDS was that if the required flag is set and no value returned by the query, then it's a failure.
The alternative is to define "required" : false in the template mapping, but that is erroneous as the overall resource-resolution would not fail (if there's a database error for that step).
So it feels more correct to allow emptyset with required being true rather than not.
|121320,6||Add MS SQL driver in CDS blueprints and DB resolution fails on an empty dataset with required template mapping.||master||ccsdk/cds||Status: MERGED||+2||+1|