Oacle 스 크 립 트 축적

3525 단어 Oaclesqlvim

define_editor='"C:\Program Files\Notepad++
otepad++.exe"'; define_editor='vim'; set echo on; set time on; set pages 9999; set linesize 9999; set serveroutput on; set timing on; set feed 1; col object_name format a30; col column_name format a10 alter session set NLS_LANGUAGE='AMERICAN';

create or replace procedure find_quoter(i_tbl_name varchar2)
as
        quoter_name varchar2(100);
        cursor quoter_cur is
                SELECT u1.TABLE_NAME AS quoter
                FROM user_constraints u1,
                user_constraints u2
                WHERE u1.constraint_type='R'
                AND u1.R_CONSTRAINT_NAME  = u2.CONSTRAINT_NAME
                AND u2.table_name         = upper(i_tbl_name);
begin
        dbms_output.put_line('--------------------------------------------');
        open quoter_cur;
        loop
                fetch quoter_cur into quoter_name;
                exit when quoter_cur%NOTFOUND;
                dbms_output.put_line(quoter_name);
        end loop;
        close quoter_cur;
        dbms_output.put_line('--------------------------------------------');
exception
        when others
        then
                dbms_output.put_line('Error: ' || sqlerrm);
end;
/

select count(*) from dictionary where instr(comments, 'index')>0;

login. sql 또는 glogin. sql 파일 뒤에 추가:

DEFINE gname = 'not connected'
COLUMN global_name new_value gname
SET termout off
SELECT USER ||'@'|| REPLACE (GLOBAL_NAME, '.WORLD', NULL) GLOBAL_NAME
FROM GLOBAL_NAME;
SET termout on
SET sqlprompt '&&gname> '

이렇게 하면 SQLPLUS 프롬프트 에 로그 인 할 때마다 '현재 사용자 이름 @ 전역 데이터베이스 이름 >' 형식 으로 자동 으로 변 경 됩 니 다.
10g 이하 버 전 은 로그 인 후 사용 자 를 전환 하 는 경우 프롬프트 가 자동 으로 업데이트 되 지 않 습 니 다.
쿼 리 메 인 키
select  tt.column_name
  from user_constraints t, user_ind_columns tt
  where t.table_name =upper('ECCAP_USER_PROVIDER')
      and tt.table_name=t.table_name
      and t.constraint_type='P'
      and t.index_name = tt.index_name
 SELECT */*dbl.lock_type, dbl.mode_held, dbl.blocking_others, dbo.object_name, dbo.object_type*/
   FROM dba_locks dbl,
   dba_objects dbo,
   v$session v
   WHERE v.sid  = dbl.session_id
   and dbo.object_id = dbl.lock_id1
AND v.username = 'HR'

query the current executing sql
 SELECT u.sid                      ,
  SUBSTR(u.username,1,12) user_name,
  s.sql_text
   FROM v$sql s,
  v$session u
  WHERE s.hash_value = u.sql_hash_value
AND sql_text NOT LIKE '%from v$sql s, v$session u%'
ORDER BY u.sid;

query the resource that has been consumed by the session
 SELECT yt.name,
  st.value
   FROM v$sesstat st,
  v$sysstat yt      ,
  v$session vs
  WHERE vs.sid    = st.sid
AND yt.statistic# = st.statistic#
AND vs.username   ='CHANG'

좋은 웹페이지 즐겨찾기