欢迎各位兄弟 发布技术文章
这里的技术是共享的
1521端口是O
http://www.itpub.net/thread-633486-1-1.html
https://www.cnblogs.com/gary-bao/p/4791370.html
https://www.cnblogs.com/mellowsmile/p/4616612.html
https://www.cnblogs.com/quanweiru/archive/2013/02/19/2916782.html
https://www.cnblogs.com/mellowsmile/p/4616612.html 带附件
https://www.cnblogs.com/TjFish/p/12739439.html
https://www.cnblogs.com/brucemengbm/p/7259159.html
https://bbs.csdn.net/topics/360247544
一
1,创建表语句
create sequence my_emp_seq nocache;
create sequence my_dept_seq nocache;
create table my_emp(
emp_id integer,
emp_name varchar2(20),
dept_id integer
);
create table my_dept(
dept_id integer,
dept_name varchar2(20)
2,函数与存储过程--函数调用存储过程
存储过程
create or replace procedure dml_my_emp_proc (emp_id_p out my_emp.emp_id%type,
emp_name_p in my_emp.emp_name%type, dept_id_p in my_dept.dept_id%type)
as
oracle中extract()函数从oracle 9i中引入,用于从一个date或者interval类型中截取到特定的部分
语法如下:
--虫琩高
--(1)тΤ禬筁1场
SELECT deptno, COUNT (*)
FROM emp
WHERE sex = '0'
GROUP BY deptno
HAVING COUNT (*) > 1
ORDER BY deptno;
--(2)т材ダM秨繷┮Τ
SELECT *
WHERE ename LIKE 'M%'
--(3)т┮Τ场恨
select distinct(BOSS)
from dept
where boss is not null;
--(4)т┦(DECODE and CASE ノ猭)
SELECT EMPNO, ENAME, DECODE (sex, 0, '', 1, '╧', '┦ゼ恶') sex
FROM emp;
SELECT empno,
ename,
函数
create or replace function lastWorkDay_fun(date_p date)
return number
last_day_pf date;
week_pf number;
day_of number;
begin
select LAST_DAY(date_p) into last_day_pf from dual;
select to_char(last_day_pf,'dd') into day_of from dual;
select to_char(last_day_pf,'d') into week_pf from dual;
loop
exit when week_pf='1' or week_pf='7';
select last_day_pf-1 into last_day_pf from dual;
Oralce中结构
create or replace function my_split(piv_str in varchar2, piv_delimiter in varchar2)
ORACLE日期时间函数大全
Oracle 获取当前年、月、日1、//oracle中extract()函数从oracle 9i中引入,用于从一个date或者interval类型中截取到特定的部分
//语法如下:
EXTRACT ( { YEAR | MONTH | DAY | HOUR | MINUTE | SECOND } | { TIMEZONE_HOUR | TIMEZONE_MINUTE } | { TIMEZONE_REGION | TIMEZONE_ABBR } FROM { date_value | interval_value } ) select extract(year from sysdate) from dual; --当前年select extract(month from sysdate) from dual; --本年到当月的月数select extract(day from sysdate) from dual; --本月到当日的天数 //我们只可以从一个date类型中截取 year,month,day(date日期的格式为yyyy-mm-dd);
SELECT LAST_DAY(DATE'2016-09-23') FROM DUAL;
ctrl点它 就可以看到这个表的详细信息了.
least(exp1,exp2,exp3,……,expn) 【功能】返回表达式列表中值最小的一个。如果表达式类型不同,会隐含转换为第一个表达式类型。 【参数】exp1……n,各类型表达式 【返回】exp1类型 【示例】 SELECT least(10,32,'123','2006') FROM dual; SELECT least('kdnf','dfd','a','206') FROM dual;
来自 https://www.shouce.ren/api/oracle/
CONVERT(c1,set1,set2) 【功能】将源字符串c1 从一个语言字符集set2转换到另一个目的set1字符集 【参数】c1,字符串,set1,set2为字符型参数 【返回】字符串 【示例】 select convert('strutz','we8hp','f7dec') "conversion" from dual; conver ------ strutz select convert(name,'us7ascii','zhs16cgb231280') "conversion" from dual;
1. UTL_RAW.CAST_TO_RAW
该函数按照缺省字符集(一般为GB2312),将VARCHAR2字符串转换为RAW。
USER 存放的VIEW
SELECT USERNAME, PROFILE, ACCOUNT_STATUS FROM DBA_USERS;
系統权限存放的VIEW
select * from system_privilege_map
DBA_USERS 显示用户的信息
DBA_ROLES 显示数据库中所有角色
DBA_ROLE_PRIVS 显示用户及其角色
DBA_SYS_PRIVS 显示被授予系统权限的用户
DBA_TAB_PRIVS 显示用户及他们在表上的权限
USER_SYS_PRIVS 當前用戶擁有的系統權限
USER_TAB_PRIVS 當前用戶擁有的對象權限
USER_ROLE_PRIVS 當前用戶擁有的角色
ROLE_SYS_PRIVS 角色擁有的系統權限
ROLE_TAB_PRIVS 角色擁有的對象權限
非预定义异常:
处理预定义异常无关的其他异常.
非预定义异常的处理步骤:
1.在pl/sql块定义部分,定义异常情况:
<异常情况> pxception;
2.将其定义好的异常情况与比标准的Oracle错误联系起来,使用pragma exception语句:
pragma exception_init(<异常情况>,<错误代码>);
3.在pl/sql块的异常处理处理部分对异常情况做出相应的处理.
实例:删除dept表中指定部分的信息(数据来自Oracle默认数据表)
分析:dept表和emp表有主外键关系,当删除指定部门信息时,应确保该部门下没有员工.