Есть ли способ в oracle sql developer создать нескольких пользователей одновременно

#sql #oracle #oracle-sqldeveloper

Вопрос:

У меня есть группа студентов, которым я хочу предоставить студенческие привилегии для определенной базы данных, настроенной в oracle. Есть ли способ сделать это сразу или я могу сделать это только индивидуально?

У меня есть электронная таблица excel с номерами учащихся, и вот код sql, который я использую для добавления их по отдельности до сих пор

 CREATE USER S56879 IDENTIFIED BY student
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp
QUOTA 100M ON users;

GRANT STUDENTROLE TO S56879;
 

Комментарии:

1. Убедитесь, что у каждого студента есть свой собственный уникальный пароль

Ответ №1:

Вы можете импортировать данные Excel в таблицу, а затем использовать динамический SQL; что-то вроде:

 begin
    for s in (select student_num from someTable) loop
        execute immediate 'CREATE USER ' || s.student_num || ' IDENTIFIED BY ...';
        execute immediate 'GRANT STUDENTROLE TO ' || s.student_num;
    end loop;
end;