Das sollte gut funktionieren. Das folgende Beispiel liefert die gleiche Anzahl von Datensätzen wie no where
Klausel
EXEC :arg_emp_name := '%%';
SELECT * FROM ALL_TABLES WHERE TABLE_NAME LIKE :arg_emp_name
Wenn Sie der Zeichenkette mehr hinzufügen
EXEC :arg_emp_name := '%ABC%';
SELECT * FROM ALL_TABLES WHERE TABLE_NAME LIKE :arg_emp_name
nur Tabellen mit ABC im Namen werden zurückgegeben
Ich möchte jedoch anmerken, dass es kein Leerzeichen zwischen :
y arg_emp_name
Dieses Leerzeichen verursacht den Fehler
Error starting at line 4 in command:
SELECT * FROM ALL_TABLES WHERE TABLE_NAME LIKE : arg_emp_name
Error report:
SQL Error: ORA-01008: not all variables bound
01008. 00000 - "not all variables bound"
*Cause:
*Action: