oracle有sysdata,Oracle基础
1、默認(rèn)事例:
用戶名:scott密碼:tiger 主機(jī)字符串:本機(jī)可以為空
2、啟動(dòng)方法:
運(yùn)行:sqlplusscott/tiger@lhd
3、SQLPLUS基本命令:
Desc:顯示表、視圖結(jié)構(gòu)? desc 表名,視圖
List:列出SQL緩沖區(qū)區(qū)中的一行或多行命令語句
Exit:退出
4、常用的數(shù)據(jù)字典(三種前綴:USER,ALL,DBA)
USER_TABLES:用戶所有表信息
USER_VIEWS:用戶所有視圖
USER_CONSTRAINTS:記錄創(chuàng)建表結(jié)構(gòu)的約束
USER_DEPENDENCIES:記錄用戶表之間的關(guān)系及自定義類型之間的關(guān)系
USER_TAB_COLUMNS:有關(guān)各表的列信息
USER_TRIGGERS:用戶觸發(fā)器的信息
5、顯示控制:
set linesize 500
set pagesize 100
"/"與"run"執(zhí)行剛才執(zhí)行的語句、也可以用“r”
"分號(hào)"代表語句結(jié)束提交到后臺(tái)執(zhí)行
6、設(shè)置時(shí)間輸出格式:
alter session set NLS_date_format='YYYY-MM-DD'
7、清屏:clear screen
8、查詢某用戶下的表名:
SELECT * FROM dba_tables WHERE owner='HSA6'
9、查詢有幾個(gè)用戶
select * from dba_users
10、導(dǎo)入DMP格式數(shù)據(jù):
1).新建成表空間和用戶名
2).impsystem/123456@orclfile='d:/data/test.dmp' log='d:/data/test.log' fromuser='hsa6' touser='hsa7'
fromuser是指dmp格式包中的某表空間的用戶,TOUSER 是指要導(dǎo)入的表空間的用戶
11、更改某值:
sqlserver:
update ca_company set dwmc=substring(dwmc,1,2)+'B'+substring(dwmc,4,10)
oracle:
UPDATE ca_company SET c4='b'|| substr(c4,2,LENGTH(c4)) WHERE c4 LIKE 'a%'
查詢系統(tǒng)所有用戶:select distince owner from dba_segments;
查看與多少個(gè)表空間:select?? tablespace_name from dba_tablespaces;
查看表空間有多少個(gè)表:select?? tablespace_name,bytes/1024/1024 file_size_mb file_name??? from dba_data_files;
1.連接:sqlplusscott/tiger@oracle或者 sqlplus / as sysdba;
2.退出:quit或exit;
3.查看當(dāng)前用戶:show user;
4.重新連接:/ as sysdba;
5.創(chuàng)建表空間:create tablespace sales datafile 'd:/hello.dbf' size 4m;
6.查看當(dāng)前時(shí)間:select sysdata from daul(有select?? 必有from);
7.查看表結(jié)構(gòu):desc dual (虛表);
8.創(chuàng)建用戶名和密碼:create user rose identified by rose;
9.授權(quán)( 使用oracle的資源): grant dba,connect,resource to rose;
10.用戶登陸:connect?? rose/rose;
11.鎖定用戶:alter user rose account lock;
12.解鎖用戶:alter user rose account unlock;
13. 刪除用戶:drop user rose;
14.在線:alter tablespace sales online;
15.離線:alter tablespace sales offline;
16.修改密碼:alter user rose identified by rose "012";
17.將表放到指定的表空間里:create table dept(did int) tablespace sales;
18.查詢指定的表在哪個(gè)表空間里:select tablespace_name from user_table where table_name="DEPT"(這里表空間的名字要大寫);
19.給表空間增加數(shù)據(jù)文件:alter tablespace sales add datafile 'd:/hello02.dbf' size 2m autoextend on next 6m;
20.修改大小:alter tablespace?? datafile 'd:/hello.dbf' resize 30m;
21.只讀:alter tablespace sales read only;
22. 可讀可寫:alter tablespace sales read write;
23.移動(dòng)表空間數(shù)據(jù)文件步驟:(1):使表空間脫機(jī)
(2):修改數(shù)據(jù)文件的名稱
(3):執(zhí)行 olter tablespace rename datafile 'c:/sales01.dbf'to 'd:/*.dbf'
可以有多個(gè)數(shù)據(jù)文件,但是源文件,要在to的左邊,目的文件要在to的右邊,文件名之間用逗號(hào)分割
(4):使用表空間連機(jī)
(5):查詢dba_data_files 確認(rèn)成功
24.創(chuàng)建用戶指定默認(rèn)的表空間磁盤配額:
create user rose identified by rose default tablespace sales quota 10m on sales;
25.刪除表空間同時(shí)刪除數(shù)據(jù)文件:drop tablespace sales including contents and datafiles;
26.查看當(dāng)前用戶每個(gè)表占用空間的大小:
create segment_name,sum(bytes)/1024/1024 mb from user_extents group by segment name;
27.查看每個(gè)表空間占用空間的大小:
select tablespace_name,sum(bytes)/1024/1024 mb from dba_segments group by tablespace_name;
-- 查看ORACLE 數(shù)據(jù)庫中本用戶下的所有表
SELECT table_name FROM user_tables;
-- 查看ORACLE 數(shù)據(jù)庫中所有用戶下的所有表
select user,table_name from all_tables;
-- 查看ORACLE 數(shù)據(jù)庫中本用戶下的所有列
select table_name,column_name from user_tab_columns;
-- 查看ORACLE 數(shù)據(jù)庫中所有用戶下的所有列
select user,table_name,column_name from all_tab_columns;
-- 查看ORACLE 數(shù)據(jù)庫中的序列號(hào)
select * from user_sequences;
-- 上面的所有對(duì)象,都可以通過下面的SQL語句查詢得到
-- 查詢所有的用戶生成的ORACLE對(duì)象
SELECT * FROM user_objects;
-- 查看ORACLE 數(shù)據(jù)庫中所有表的注釋
select table_name,comments from user_tab_comments;
-- 查看ORACLE 數(shù)據(jù)庫中所有列的注釋
select table_name,column_name,comments from user_col_comments;
-- 給表加ORACLE的注釋
COMMENT ON TABLE aa10 IS '系統(tǒng)參數(shù)表';
-- 給列加ORACLE的注釋
COMMENT ON COLUMN aa10.aaa100 IS '參數(shù)類別';
-- 查看表中列的屬性,包括 數(shù)據(jù)類型,是否非空等
DESC aa10;
-- 通過系統(tǒng)表,查看表中列的屬性,包括 數(shù)據(jù)類型,是否非空等
SELECT table_name,COLUMN_ID,column_name,data_type,data_length, DATA_PRECISION,NULLABLE
FROM user_tab_columns
ORDER BY table_name,COLUMN_ID;
-- 查看數(shù)據(jù)庫中表、索引占用的數(shù)據(jù)庫空間大小
SELECT * FROM user_segments;
-- 查看所有表的記錄數(shù)
CREATE TABLE table_count(table_name VARCHAR2(50),columns NUMBER(20));
-- 通過PB運(yùn)行下面的語句,得到結(jié)果集,將結(jié)果集在PB下執(zhí)行,最后提交
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數(shù)據(jù)庫的注釋同步到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數(shù)據(jù)庫的注釋同步到PB中 代碼結(jié)束
--將PB注釋同步到ORACLE中
select 'comment on table '||pbt_tnam||' is '''||pbt_cmnt||''';' from pbcattbl where 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%';
--查進(jìn)程
select object_id,session_id,locked_mode from v$locked_object;
select t2.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;
--殺進(jìn)程 alter system kill session '3,6666';
總結(jié)
以上是生活随笔為你收集整理的oracle有sysdata,Oracle基础的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 27 JSX函数子元素的应用与思考
- 下一篇: 1 redux初探、用react开发数值