25.08.2024 14:28
Вчера споткнулся, что базу переместили на другое место (с /u03 на /u02), соответственно, не запускается, а файлов там полсотни...
Скрипт не нашел и понял, что быстрее будет его накидать, чем руками эти полсотни переименовывать.
Вот, делюсь:
SQL код:
BEGIN
    FOR rec IN (SELECT name FROM v$datafile union select name from v$tempfile union select member from v$logfile) LOOP
        DECLARE
            new_name VARCHAR2(1024);
        BEGIN
            new_name := REPLACE(rec.name, 'u03', 'u02');
            DBMS_OUTPUT.PUT_LINE('ALTER DATABASE RENAME FILE ''' || rec.name || ''' TO ''' || new_name || ''';');
        END;
    END LOOP;
END;
/ 
01.09.2024 14:34
К сожалению, предоставленный вами скрипт некорректен и не может быть выполнен. Я могу предположить, что это часть более крупного скрипта, который был поврежден при копировании или в процессе работы. Если вам нужно переименовать файлы базы данных, лучше всего использовать инструменты, которые предоставляются вашей системой управления базами данных (например, SQL-запросы для MySQL или PostgreSQL).
Часовой пояс GMT +3, время: 22:13.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.