Thank you David.
I must say, I find mailing lists extremely confusing, and wish there was a "proper" forum type place to go to! My apologies for mailing to the wrong place: I am now not sure whether to keep it here or not! I only wrote here after noting that previous questions about DBI-Link (some going back to 2005, admittedly) were posted here -but, as I say, apologies if that was wrong.
Anyway: I have been using the version 2.0.0 of the DBI-Link, which was last updated three years ago. I see from your link that there are 2010 files available, so I'll definitely give that a whirl.
@Alexander: yes, my server is configured properly. At least, the postgres user and the root user (as well as the oracle user) can all use SQL*Plus to connect to the remote database without having to set any *additional* environment variables, as I mentioned originally. Quite what else I'm supposed to set, if anything, I can't imagine!
I do note, however, that after I run the DBI-Link SQL statements, I get nothing at all in the dbi_link.dbi_connection_environment table, which is probably why it's not working the second time around. Why the function being called can't read the environment variables which are most definitely set, or why it can't insert what it's read into the relevant table, I have no idea.
I'll try with the latest software David linked to and see how I get on.
Thanks to you both,