Yippee.. I seem to have got it working. Thanks to @briankung for encouragement.
It seems this particular development directory got confused in some way that I don't understand.
The same code (+ cargo.toml + db etc) worked in another project.
So I started with a clean git clone, added the code & now it works.
A bit scary that somewhere there is something I can't see that broke sqlx so thoroughly in this one directory.
Still I have learned a lot about #RustLang testing, async & #sqlx which is good