Oracel 常用命令

2021-08-20 19:53:56 字數 4359 閱讀 2916

建立表空間:

create tablespace ...
修改表空間:

alter tablespace u1_tablespace rename datafile 'u1_datafile' to 'u1_dbf1';

alter tablespace u1_tablespace online;

使用表空間:

create table t(t1 char(10)) tablespace u1_tablespace;
查詢表空間:

#查詢系統儲存表空間的系統表結構

describe dba_tablespaces;

select tablespace_name,status from dba_tablespaces;

select file_name,file_id,tablespace_name,bytes from dba_data_files

sql語言的主要組成部分:

ddl:data defiinition language 資料定義語言

dml:data manipulation language 資料操縱語言

dcl:data control language 資料控制語言

建立使用者:

create user 使用者名稱 identified by 密碼

[default tablespace 預設表空間]

[temporary tablespace 臨時表空間]

給使用者連線資料庫的許可權:

grant connect to 使用者名稱;

具有connect角色的使用者可以登入資料庫,執行資料查詢和操縱。即可以執行alter table,create view,create index,drop table,drop view,drop index

grant,revoke,insert,select,update,delete,audit,noaudit等操作

如果只是給使用者賦予建表許可權,如:grant create table to user1;這樣使用者還是不能成功建表,提示錯誤是對錶空間沒有操作權。

給使用者賦予表空間的使用權:

alter user u1 quota 200m on 表空間1;

alter user u1 quota unlimited on 表空間1;

收回建表權:

revoke create table from u1;
resource角色可以建立表,即執行create table操作。建立表的使用者將擁有對該錶的所有許可權。create table 許可權和create any table 許可權是有區別的,後者可以建立其他使用者下的**。如用u1登入,可以這樣建表create table system.t (t1 int);  建立其他使用者(如u1)的**,**的所有權應歸屬於**的擁有者(u1),而不是建立者。即他不能對該**進行許可權外操作。若想將許可權賦予所有使用者,可以使用public角色。

grant select on sc to public;---執行後所有使用者將擁有sc的查詢權利。
定義基本表的語句格式:

create table 《表名》 (《列定義》)

--列定義:列定義,列資料型別,長度,是否允許為空等。

--定義完整型約束:列約束和表約束

--[constraint 《約束名》]《約束定義》

oracel 中複製表:

oraclezhong 複製student表

create table t as select * from student where 1=2;(只複製表結構)

sql中複製表:

select * into t from student;

oracle中檢視表示式的值:

oracel中可以通過dual表檢視常量或表示式的值:

--檢視系統時間

select sysdate from dual;

--產生1到10的隨機數

select dbms_random.value(1,10) from dual;

rownum:為oracel**中的記錄邏輯順序的列,在oracle中的查詢順序是,先查詢,後排序。

rownum在條件中只能小於某數,不能大於某數。

查詢成績最高的5位同學的學號:

select * form (select * from sc order by grade desc) a where rownum <=5

查詢成績在10到15的學生學號:

select * from (select rownum rn,a.* from (select * from sc order by grade desc) a) where rn <= 15 and rn >=10;

decode函式和sign函式:

select sno,s***,decode(trim(s***),'m','男','f','女','待定')  性別 from student

sign函式的具體語法格式:

sign(v1-v2):v1-v2為正數則返回1,負數返回-1,0為0;

select sno,cno,decode(sign(grade-60),1,'及格',-1,'不及格','未考試') 是否合格  from sc;

使用case when分類輸出:

select sno 學號,cno 課程號,

(case when grade>=90 then '優'

when grade>=80 then '良'

when grade>=70 then '中'

else '及格'

end) as 成績級別

sql plus 登入資料庫指令:

請輸入使用者名稱: 

system/password
請輸入使用者名稱: 

system
輸入口令: // 此處填寫口令不可見,正確輸入後回車即可

請輸入使用者名稱: 

system/password@orcl // 指定資料庫例項 orcl
請輸入使用者名稱: 

sys/password as sysdba // sys使用者登入需要指定方式
sql plus 退出資料庫指令:

quit

exit

sql plus 切換使用者指令:

conn sys as sysdba

輸入口令:

已連線。

sql>

sql plus 清空螢幕指令:

clear screen;
1、sys是oracle的乙個很特殊的使用者,它只能按sysdba和sysoper身份登入,也就是說只要按以上兩種身份登入,都是sys使用者,

表面上輸入的使用者名稱都是無效的。任何其它使用者只能按normal身份登入。

2、sys使用者的合法認證有兩種方式:

一是作業系統認證方式,

二是資料庫口令認證方式。如果你登入的作業系統是oracle使用者組,

那麼直接通過作業系統認證連線到資料庫,沒有必要口令來認證。所以你隨便輸入乙個口令都可以的。

以sysdba身份登入sqlplus工具

執行archive log list命令可以檢視資料庫當前執行模式

執行alter database archivelog | noarchivelog命令修改資料庫的日式模式

獲取控制檔案資訊:

select name from v$controlfile
未完待續。

Oracel系列之二 資料庫常用命令

oracle資料庫常用命令1 建立表空間 create tablespace 表空間名 defaul filename path 伺服器端路徑 size integer k m autoextend off on size 制定檔案的大小,autoextend 用來啟動或禁用資料檔案的自動擴充套件。...

docker常用命令 Docker 常用命令筆錄

格式docker run 選項 映象 命令 引數.示例docker run it rm ubuntu 16.04 bash 示例解釋 it 這是兩個引數,乙個是 i,表示互動式操作,乙個是 t表示終端 rm 這個引數是說容器退出後隨之將其刪除 ubuntu 16.04 這是指用ubuntu 16.0...

常用命令 Git 常用命令大全

安裝教程可參照 廖雪峰老師的安裝教程。git config 在git中,使用git config 命令來配置 git 的配置檔案,git配置級別主要有3類 1 倉庫級別 local 本地 git 倉庫級別配置檔案,作用於當前倉庫。優先順序最高 2 使用者級別 global,全域性配置檔案,作用於所有...