Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment exécutez-vous SQL à partir d'un script bash ?

Je suis un peu confus. Vous devriez pouvoir appeler sqlplus depuis le script bash. C'est peut-être ce que vous faisiez avec votre premier relevé

Essayez d'exécuter ce qui suit dans votre script bash :

#!/bin/bash          
echo Start Executing SQL commands
sqlplus <user>/<password> @file-with-sql-1.sql
sqlplus <user>/<password> @file-with-sql-2.sql

Si vous souhaitez pouvoir transmettre des données dans vos scripts, vous pouvez le faire via SQLPlus en passant des arguments dans le script :

Contenu de file-with-sql-1.sql

 select * from users where username='&1';

Changez ensuite le script bash pour appeler sqlplus en passant la valeur

#!/bin/bash

MY_USER=bob
sqlplus <user>/<password> @file-with-sql-1.sql $MY_USER