sql >> Databasteknik >  >> RDS >> Oracle

Vill att denna enkla fråga ska gå i loop

Du kan göra detta med två SQL-skriptfiler så här:

1) Arkiv myscript.sql:

ACCEPT column_name CHAR PROMPT 'Please insert column name: '

SELECT DISTINCT owner, table_name
FROM all_tab_columns
WHERE column_name IN ('&column_name');

-- Ask the user if the want to search again
ACCEPT response CHAR PROMPT 'Would you like to search for another column? '

-- Use a SELECT statement to look at their response and set variable "script" as appropriate
COLUMN script new_value script

-- Stop this select's results being displayed (in SQL Plus)
SET TERM OFF

SELECT CASE LOWER('&response.') WHEN 'yes' THEN 'myscript' ELSE 'stop' END AS script
FROM DUAL;

-- Switch terminal output back on
SET TERM ON

-- Run whichever script the user chose i.e. "myscript.sql" if they said "yes", "stop.sql" if they said "no".
@&script.

2) Filen stop.sql:

-- This script just says "Have a nice day" then ends.
PROMPT Have a nice day

Beroende på om användaren svarar 'ja' eller 'nej', kör skriptet antingen sig självt igen (loopar) eller kör skriptet stop.sql, som bara säger "Ha en trevlig dag".




  1. Hur man ansluter till en avlägsen PostgreSQL-databas via SSL med Python

  2. LPAD() Funktion i Oracle

  3. uppdatera och komprimera SQLite-databas i Android

  4. Hur räknar man alla NULL-värden i en tabell?