oracle基础操作

--创建表空间
CREATE TABLESPACE TEST_SPACE
DATAFILE 'G:\app\Administrator\oradata\orcl\BRYAND.DBF'
SIZE 2M
AUTOEXTEND ON NEXT 2M MAXsize 10M;  


--删除表空间
DROP TABLESPACE TEST_SPACE INCLUDING CONTENTS AND DATAFILES;


--创建临时表空间
CREATE TEMPORARY TABLESPACE TEST_TEMP_SPACE
TEMPFILE 'G:\app\Administrator\oradata\orcl\BRYAND_TEMP.DBF'
SIZE 2M
AUTOEXTEND ON NEXT 2M MAXsize 10M;


--扩展表空间
ALTER TABLESPACE TEST_SPACE
ADD DATAFILE 'G:\app\Administrator\oradata\orcl\BRYAND_01.DBF'
SIZE 1M
AUTOEXTEND ON NEXT 1M MAXsize 5M;


ALTER DATABASE DATAFILE 'G:\app\Administrator\oradata\orcl\BRYAND_01.DBF' RESIZE 2M;


--查找用户默认表空间
select username,default_tablespace from dba_users;


--创建用户并授权
CREATE USER bryand identified by tiger 
DEFAULT TABLESPACE TEST_SPACE
TEMPORARY TABLESPACE TEST_TEMP_SPACE;
GRANT CONNECT,RESOURCE,DBA TO bryand;


CREATE TABLE SCOTT.TEST_USER(
USER_ID NUMBER,
USER_NAME VARCHAR2(20)
);
--为该表添加主键
ALTER TABLE TEST_USER ADD CONSTRAINT PK_USER_ID PRIMARY KEY(USER_ID);
--添加列
ALTER TABLE TEST_USER ADD USER_AGE VARCHAR2(2);
--修改列
ALTER TABLE TEST_USER MODIFY USER_AGE NUMBER;
--删除列
ALTER TABLE TEST_USER DROP COLUMN USER_AGE;


--创建序列
CREATE SEQUENCE TEST_SEQUENCE
MINVALUE 1
MAXVALUE 100000
START WITH 1
INCREMENT BY 1
CACHE 5
NOCYCLE
ORDER;


--获取下一个序列值
SELECT TEST_SEQUENCE.NEXTVAL FROM DUAL;
--获取当前序列值

SELECT TEST_SEQUENCE.CURRVAL FROM DUAL;


常用函数:

单行数字函数
ABS(X) x的绝对值
asin(x)
sin(x)...
ceil(x)返回大于等于x的最小整数
floor(x)返回小于等于x的最大整数
exp(x)返回e的x次幂
mod(y,x)返回y除以x的余数,x为0时则返回y
round(x,y)若不填y,则返回x四舍五入后的整数,y为负数则保留小数点前y位,正数则保留到小数点后y位
sign(x)检测x的正负 
trunc(x,y),数字截取。若y不填则截图x的小数部分,若y为正数则截取到小数点后y位,若y为负数则截取到小数点前y位


单行字符函数
concat(x,y)返回将y添加到x后面而形成的字符串。如果某一个是null则返回另一个,如果2个都是null则返回null
length(x)返回x的长度,包括空格,若x为null则返回null
lower(x)返回将x全部字符都小写后的字符串
upper(x)返回将x全部字符都大写后的字符串
nanvl(x,value)如果x匹配NaN(即非数字),就返回value,否则返回x
nvl(x,value)如果x为空,就返回value,否则返回x
nvl2(x,value1,value2)如果x为空,就返回value1,否则返回value2
replace(c1,c2,c3)把c1中出现的c2都用c3替换,c3默认为null即删除c2;如果c2为null则返回c1;若c1为null则返回null
substr(c,m[,n])返回c的子串,其中m是子串开始的位置,n是子串的长度。如果m为0则从c的首字符开始;如果m是负数则从c的结尾开始

instr() 返回字符所在字符串中的位置,和java中indexOf函数类似

SELECT instr('ABCAB','A',1,1) FROM DUAL;--1

SELECT instr('ABCAB','A',-1,1) FROM DUAL;--4

--if 第一个值等于NULL,则为1,否则为2,后面可以一直接条件,decode(A,B,.....)

SELECT DECODE('10',NULL,1,2) FROM DUAL;--2


SELECT CASE when T.LOC='NEW YORK' then 1 
            when T.LOC='DALLSA'   then 2
              else 3 end loc
 FROM DEPT T WHERE T.DEPTNO=10;




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值