oracle-day02
-- 建立表空間
create tablespace tbs_qy86
datafile 'E:\tablespace\qy86.dbf'--該表空間預設使用的檔案
size 100m
autoextend on next 10m maxsize unlimited -- 100m用完,自動增長十兆,最大無上限
create tablespace tbs_qy86b
datafile 'E:\tablespace\qy86b.dbf'--該表空間預設使用的檔案
size 100m
autoextend on next 10m maxsize unlimited -- 100m用完,自動增長十兆,最大無上限
--刪除表結構
drop tablespace tbs_qy86b including contents and datafiles;
-- 建立使用者
create user user_qy86
identified by admin --設定密碼
default tablespace tbs_qy86 -- 預設使用表空間
--更新使用者
-- 更新鎖定狀態
alter user user_qy86 account lock; --鎖定該使用者
alter user user_qy86 account unlock;
-- 使用者授權
-- connect 連結許可權 有登入,部分DML
-- resource 全部DML和部分DDL許可權
-- dba 和system許可權一樣,可以對其他使用者進行新增刪除
--賦權
grant connect,resource to user_qy86 --給使用者賦予連結許可權和可以DML操作
grant resource to user_qy86
-- 取消許可權
revoke connect,resource from user_qy86
--跟新使用者密碼
alter user user_qy86 identified by admin
-------------------------------------------------------------
-- oracle 函式
-- concat
select concat(concat('Hello','World') ,'!!')from dual;
select '你好'||'很好'||'!!!' from dual
select concat('aas','asdf'||'asdf') from dual;
-- initcap首字母大寫
select initcap('hello world') from dual
select initcap(concat('job','-'||ename))as je,job,ename from emp
-- upper lower
select upper('asd') from dual; --全變大寫
select lower('ASD') from dual;
-- instr (相當於 indexof()) 第一次出現的位置,從1開始,不存在為0
select instr('asdfa','a') from dual
select instr('asdfa','a',3) from dual --從3開始之後出現a的位置
-- substr 擷取字串
select substr('asdfasd',2,4) from dual
select substr('26332632633',3) from dual
-- 'fa,ddd,fa'
select substr('fa,ddd,fa',
instr('fa,ddd,fa',',',1,1)+1,
instr('fa,ddd,fa',',',1,2)-(instr('fa,ddd,fa',',',1,1)+1)
)from dual
-- rpad lpad 補齊
select rpad('aa',5,'名aa')from dual
select lpad('aa',5,'mign')from dual
-- dbms_random.value隨機數
select trunc((dbms_random.value*1000),0)from dual
select 'order'||lpad(trunc(dbms_random.value*1000),8,0)from dual
select 'order'||lpad(trunc(seq_tb_b.nextval),8,0)from dual
-- ltrim rtrim 去空格
select rtrim(' a a')from dual
select length(' ')from dual
select length(' asdf '),length(trim(' 'from ' asdf ')),trim(' 'from ' asdf ')from dual
-- replace 替換
select replace('asdfasfd','a','o')from dual