sql >> Database >  >> RDS >> Oracle

Kan SQL*Plus omgevingsvariabelen lezen van de machine waarop deze draait?

U kunt een paar klantgerelateerde dingen krijgen van de USERENV context , maar geen willekeurige omgevingsvariabelen.

Als u een bestand op uw lokale computer kunt maken, kunt u gebruiken de host commando om een ​​vervangingsvariabele in te stellen op basis van een omgevingsvariabele:

SQL > host echo define homedir=$HOME > /tmp/gethome.sql

SQL > @/tmp/gethome.sql
SQL > host rm -f /tmp/gethome.sql

SQL > select '&homedir.' as home from dual;

HOME
------------
/home/apoole

1 row selected.

Niet erg mooi, maar als je de variabelen op de opdrachtregel niet als positionele parameters kunt doorgeven, zijn je opties nogal beperkt.

Dit gebruikt natuurlijk Unix-y-paden en -commando's, maar je kunt hetzelfde doen in Windows.



  1. Moet ik een GraphQL-ID als een tekenreeks op de client verwerken?

  2. SQL Server-gegevens invoegen met Oracle® SQL*Loader

  3. C# en mysqldump

  4. SELECT werkt niet bij gebruik van !=in WHERE-component (met GROUP BY en HAVING COUNT)