查看ORACLE 數據庫信息


-- 
查看ORACLE 數據庫中本用戶下的所有表 
SELECT table_name FROM user_tables;

-- 查看ORACLE 數據庫中所有用戶下的所有表 
select user,table_name from all_tables;

-- 查看ORACLE 數據庫中本用戶下的所有列 
select table_name,column_name from user_tab_columns;

-- 查看ORACLE 數據庫中本用戶下的所有列 
select user,table_name,column_name from all_tab_columns;

-- 查看ORACLE 數據庫中的序列號 
select * from user_sequences;

-- 上面的所有對象,都可以通過下面的SQL語句查詢得到 
-- 
查詢所有的用戶生成的ORACLE對象 
SELECT * FROM user_objects;

-- 查看ORACLE 數據庫中所有表的註釋 
select table_name,comments from user_tab_comments;

-- 查看ORACLE 數據庫中所有列的註釋 
select table_name,column_name,comments from user_col_comments;

-- 給表加ORACLE的註釋 
COMMENT ON TABLE aa10 IS '
系統參數表';

-- 給列加ORACLE的註釋 
COMMENT ON COLUMN aa10.aaa100 IS '
參數類別';

-- 查看錶中列的屬性,包括 數據類型,是否非空等 
DESC aa10; 
-- 
通過系統表,查看錶中列的屬性,包括 數據類型,是否非空等 
SELECT table_name,COLUMN_ID,column_name,data_type,data_length,DATA_PRECISION,NULLABLE 
FROM user_tab_columns 
ORDER BY table_name,COLUMN_ID;

--查看所有表空間  

selecttablespace_name,sum(bytes)/1024/1024 from dba_data_files  group by tablespace_name

--查看未使用表空間大小

selecttablespace_name,sum(bytes)/1024/1024 from dba_free_space group bytablespace_name;


-- 
查看數據庫中表、索引佔用的數據庫空間大小 
SELECT * FROM user_segments;

-- 查看所有表的記錄數 
CREATE TABLE table_count(table_name VARCHAR2(50),columns NUMBER(20)); 
-- 
通過PB運行下面的語句,得到結果集,將結果集在PB下執行,最後提交
select 'insert into table_count values('''||table_name||''', (select count(1)from '||table_name||'));//'||comments from user_tab_comments; 
-- 
所有表的記錄都在table_count 
SELECT * FROM table_count;

// ORACLE數據庫的註釋同步到PB中 代碼開始
DELETE FROM PBCATCOL WHERE PBC_TNAM LIKE '%'; 
DELETE FROM PBCATTBL WHERE PBT_TNAM LIKE '%';


INSERT INTO PBCATTBL 
( PBT_TNAM, 
PBT_OWNR , 
PBT_CMNT) 
SELECT ALL_TAB_COMMENTS.TABLE_NAME, 
ALL_TAB_COMMENTS.OWNER, 
ALL_TAB_COMMENTS.COMMENTS 
FROM ALL_TAB_COMMENTS 
WHERE ALL_TAB_COMMENTS.OWNER = 'LH' 
AND TABLE_NAME LIKE '%';


// 
同步字段名

INSERT INTO PBCATCOL 
( PBC_TNAM, 
PBC_OWNR, 
PBC_CNAM, 
PBC_LABL, 
PBC_CMNT, 
PBC_HDR) 
SELECT ALL_COL_COMMENTS.TABLE_NAME, 
ALL_COL_COMMENTS.OWNER, 
ALL_COL_COMMENTS.COLUMN_NAME, 
ALL_COL_COMMENTS.COMMENTS , 
ALL_COL_COMMENTS.COMMENTS , 
ALL_COL_COMMENTS.COMMENTS 
FROM ALL_COL_COMMENTS 
WHERE ALL_COL_COMMENTS.OWNER = 'LH' 
AND TABLE_NAME LIKE '%';

COMMIT; 
-- 
ORACLE數據庫的註釋同步到PB中 代碼結束


--
PB註釋同步到ORACLE 
select 'comment on table '||pbt_tnam||' is '''||pbt_cmnt||''';' from pbcattblwhere pbt_tnam not like 'PB%' 
UNION 
select 'comment on column '||pbc_tnam||'.'||pbc_cnam||' is '''||pbc_cmnt||''';'from pbcatcol where pbC_tnam not like 'PB%';


--
查進程 
select object_id,session_id,locked_mode from v$locked_object;

selectt2.username,t2.sid,t2.serial#,t2.logon_time 
from v$locked_object t1,v$session t2 
where t1.session_id=t2.sid order by t2.logon_time;

--殺進程 
alter system kill session '3,6666';

 

oracle操作語句:

1.創建表

create table 表名

 列名類型,

 列名類型

); 

2.修改類屬性

alter table 表名 modify(列名 類型); 

3.添加列

alter table 表名 add(列名 類型); 

4.添加主鍵約束和非空約束

alter table 表名 add constraint pk_表名 primary key(列名); 

alter table 表名 modify(列名 not null); 

5.刪除主鍵約束

alter table 表名 drop primary key; 

alter table 表名 drop constraint pk_表名

6.失效約束

alter table 表名 disable primary key; 

alter table 表名 disable constraint pk_表名

7.有效約束

alter table 表名 enable primary key; 

alter table 表名 enable constraint pk_表名

8.刪除列

alter table 表名 drop column 列名

9.設置某列不可用,然後刪除

alter table 表名 set unused(列名); 

alter table 表名 drop unused columns; 

10.修改表名

rename 表名1 to 表名

alter 表名1 rename to 表名2; 

11.截斷表

truncate table 表名

12.截斷表保留行空間

truncate table 表名 resue storage; 

13.查看錶結構

desc table 表名

14.刪除表

drop table 表名

15.插入記錄

例:insert into 表名 values(內容1,內容2,內容3,內容4); 

16.帶參數對話方式插入行

:insert into 表名 values(&列名1,&列名2); 

 insert into 表名 values(內容1,內容2); 

17.插入某幾列記錄

insert into 表名(列名1,列名2) values(內容1,內容2); 

18.爲列插入空值(其列不能爲not null

insert into 表名 values(內容1,null,null); 

19.創建表(包括主鍵及外鍵設置)方法一

create table 表名

 列名類型

 constraint pk_表名 primary key, 

 列名類型 not null, 

 列名類型 

 constraint fk_表名 reference 表名(列名), 

 列名類型

 constraint ck_表名 check(列名3 in(''內容1'',''內容2'',''內容3'')) 

); 

20.查詢所有行

select * from 表名

21.查詢某幾列

select 列名1,列名2 from 表名

 

22.重複行消除

select distict 列名 from 表名

23.where語句查詢

select * from 表名 where 條件 order by 列名

(注:如number類型查出自動按升序排列,如要按降序排列,則select * from 表名 where 條件 order by 列名 desc;) 

24.創建表,方法二

create table 表名

 列名類型 primary key, 

 列名類型 not null, 

 列名類型check(列名3 in('''','''','''')), 

 列名類型 refernce 表名(列名

); 

 

25.修改 =‘的數據

update 表名 set (=) where =‘’; 

 

26.刪除行

delete from 表名 where 條件

 

27.事務處理

--事務處理

update 表名

set 列名(日期) = ''30-5-98'' 

where 條件

savepoint mark1; 

delete from 表名 where 條件

savepoint mark2; 

rollback to savepoint mark1; 

rollback; 

28.建立用戶user1,密碼爲password 

授予用戶connect,resource的權限

connect角色用於登錄

resource角色用於建表等

connect system/manager 

create user user1 identified bypassword; 

grant connect,resource to password; 

29.數據控制語言

connect scott/tiger 

30.把對錶1查詢和修改的權限授予user1 

grant select,update on 1 to user1; 

31.把對錶表1中列1和列2修改的權限授予user1 

grant update(1,2) on 1 to user1; 

32.把對錶表1查詢的權限授予用戶user1 

並且user1用戶還可以把這個權限授予別的用戶(with grant option) 

grant select on 1 to user1 with grant option; 

33.從用戶user1撤銷對錶1查詢和修改的權限

revoke select,update on 1 from user1; 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章