프로 시저 내 사용자 테이블에서 오라클 사용자를 생성하려면 triyin입니다. 문제는 특정 열을 호출하는 방법을 모른다는 것입니다. 나는 Camp.user.username과 그 물건으로 시험해 보았다.즉시 실행 문장의 매개 변수 (프로 시저 내부)
create or replace
PROCEDURE PR_USERPASS AS
BEGIN
UPDATE CAMP.USERS
SET USERNAME = (DBMS_RANDOM.string('x',15)), PASS = DBMS_RANDOM.string('x',12);
EXECUTE IMMEDIATE 'CREATE USER ' || USERNAME || ' IDENTIFIED BY ' || PASSWORD;
EXECUTE IMMEDIATE 'Grant connect to ' || USERNAME;
END PR_USERPASS;
어쨌든 동일한 절차에서 해당 참조를 호출 할 수 있습니까? 미리 감사드립니다.
컴파일되었지만 작동하지 않습니다. '사용자 또는 역할 이름이 예상되었습니다.' – Sergiodiaz53
나는 사용자 생성 (: a) IDENTIFIED BY (: b)를 실행하고 userRow.USERNAME, userRow.PASS를 사용해 보았습니다. 여전히 작동하지 않습니다. – Sergiodiaz53
'ORA-01935' 오류입니까? 이 경우 DBMS_Random.String ('x', length)'는 문자와 숫자로 값을 반환하고, 첫 번째 문자가 숫자이면 사용자 이름이나 암호에 유효한 이름이 아니기 때문일 수 있습니다. 번호로 시작하는 사용자 이름이나 비밀번호를 원하십니까? 어쨌든 괜찮습니다. 그냥 알려 주시면 업데이트를 게시하겠습니다. –