دیتابیس اوراکل

۲ مطلب با موضوع «SQL & PL/SQL» ثبت شده است

اگر بخواهیم پسورد یک user را که در دیتابیس دیگری قرار دارد با استفاده از database link تغییر دهیم ، میتوانیم از پروسیجر زیر برای انجام این کار استفاده کنیم.


create or replace procedure change_pass_prc authid current_user as

begin

  cursor usr_cur is

    select username from dba_users@pass_link;

  begin

    for usr_rec in usr_cur loop

      if usr_rec.username = 'USR1' then

        declare

          job binary_integer;

        begin

          dbms_job.submit@pass_link(job,'begin execute immediate ''alter user ' || usr_rec.username ||

                                                             ' identified by "USR1" ''; end;');

          commit;

        end;

        dbms_output.put_line(usr_rec.username || ' password changed.');

      end if;

    end loop; 

  when

  exception when others then 

     raise_application_error(-20000,sqlerrm);

end change_pass_prc;



  • راهله شاکری

یکی از مواردی که همواره در پایگاه داده ها مطرح است پرشدن یک ستون با استفاده از اعداد پشت سر هم است . در این خصوص راه کارهای زیادی در پایگاه داده اوراکل وجود دارد که یکی از آنها استفاده از sequence می باشد، در نسخه های قبل از 12C برای پر کردن ستون ها به وسیله sequence یا باید موقع وارد کردن رکورد از nextval استفاده کرد و یا با استفاده از trigger اینکار را انجام داد. در نسخه 12C این امکان وجود دارد که از sequence وتابع nextval در قسمت default ستون استفاده شود.


;create sequence test_seq


create table my_tab

(

, id number default test_seq.nextval

  (name varchar2(20

;(


;('insert into my_tab (name) values('aaaa

;commit


;select * from my_tab

                ID   NAME

---------- --

        1aaaa


  • راهله شاکری