Я сделал некоторые изменения для вышеуказанного кода, чтобы заставить его работать быстрее, если вы ищете только одного владельца. Вам просто нужно изменить 3 переменные v_owner, v_data_type и v_search_string в соответствии с тем, что вы ищете.
SET SERVEROUTPUT ON SIZE 100000
DECLARE
match_count INTEGER;
-- Type the owner of the tables you are looking at
v_owner VARCHAR2(255) :='ENTER_USERNAME_HERE';
-- Type the data type you are look at (in CAPITAL)
-- VARCHAR2, NUMBER, etc.
v_data_type VARCHAR2(255) :='VARCHAR2';
-- Type the string you are looking at
v_search_string VARCHAR2(4000) :='string to search here...';
BEGIN
FOR t IN (SELECT table_name, column_name FROM all_tab_cols where owner=v_owner and data_type = v_data_type) LOOP
EXECUTE IMMEDIATE
'SELECT COUNT(*) FROM '||t.table_name||' WHERE '||t.column_name||' = :1'
INTO match_count
USING v_search_string;
IF match_count > 0 THEN
dbms_output.put_line( t.table_name ||' '||t.column_name||' '||match_count );
END IF;
END LOOP;
END;
/
Вы можете проверить http://in2.php.net/manual/en/function.eval.php#56641 , надеюсь, что это поможет.
Не используйте eval()
- это зло!
Используйте относительный локальный путь, а автоматически сопоставляют его с абсолютным URL .
Если URL-оболочки включены, и вы хотите вывести заголовок.php (и вы не хотите сохранять состояние сеанса), вы можете использовать $headerHTML=file_get_contents('http://yourdomain.tld/path/to/header.php');
, хотя почему бы вам хотелось этого сделать, это ускользает от меня. Вы уверены, что не пытаетесь сделать что-то, что можно легко решить, используя шаблоны и кеширование?
ob_
– Mołot 25 March 2014 в 13:20ob_
вызовы могут быть вложенными; в этом случае возвращается содержимое буфера current i>. – Salman A 25 March 2014 в 19:50