设为首页 加入收藏

TOP

oracle的5个体系结构概念讲解(一)
2018-01-16 14:49:44 】 浏览:124
Tags:oracle 体系结构 概念 讲解

oracle的5个体系结构概念讲解

一、oracle的体系结构===【5个概念】  
  
--1.数据库 database    
  Oracle数据库 只有一个database  名字orcl  
  
--2.实例 由一系列的进程和内存结构组成,  
--实例可以有多个,但是在使用时99.9%都使用一个实例  
  
--3.数据文件  .dbf  
   存放数据的文件  
  
--4.表空间###  
   就是数据文件的逻辑映射  
  
--5.用户###  
   用来操作表空间的  
     
     
二 、首先是system系统用户,执行如下代码可以【切换用户】。   
---------Scott用户默认密码是tiger【重置密码】  
使用sql重置Scott的密码  
alter user scott identified by tiger  
  
---###---select * from scott.emp; --访问scott用户的emp表  
  
-----------------------以下使用scott用户---------------------------  
select * from dept;--  部门  
select * from emp; --员工  
select * from salgrade;--工资等级  
  
三、查询  
--1.简单查询  
  
1、别名的使用---乱码  
select empno as "员工编号"  ,ename as 员工姓名 , job  "职位" ,mgr 领导  from emp  
  
select empno as "员工编号"   from emp  
解决乱码  
 中文乱码问题解决  
/*   
1.查看服务器端编码  
select userenv('language') from dual;  
我实际查到的结果为:AMERICAN_AMERICA.ZHS16GBK  
2.执行语句 select * from V$NLS_PARAMETERS   
查看第一行中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中是否和第一步得到的值一样。  
如果不是,需要设置环境变量.  
否则PLSQL客户端使用的编码和服务器端编码不一致,插入中文时就会出现乱码.  
3.设置环境变量  
计算机->属性->高级系统设置->环境变量->新建  
设置变量名:NLS_LANG,变量值:第1步查到的值, 我的是 AMERICAN_AMERICA.ZHS16GBK  
4.重新启动PLSQL,插入数据正常  
*/  
  
2、四则运算   
select sal , sal*12 from emp;  
  
3、连接符   ||  
  
--dual伪表  目的:【就是为了配置查询语句】---了解  
"员工编号是XXX,姓名是XXX,职位是XXX"  
select '员工编号是XXX'||'姓名是XXX'||'职位是XXX' info from dual  
  
select '员工编号是'||empno||'姓名是'||ename||'职位是'||job  from emp;  
  
4、去重 distinct  
  
--2.条件查询  where  
  
1、查询工资大于1500并且小于3000的员工  
select * from emp where  sal>1500 and sal<3000  
2、between ..and   --包含临界值  
select * from emp where  sal>=1500 and sal<=3000;  
select * from emp where  sal between 1500 and  3000;  
3、null 不是空字符串也不是0,是未知类型的数据并且 null和null不相等,  
查询奖金为空的员工  
select * from emp where comm is null  
查询奖金不为空的员工  
select * from emp where comm is not null  
4、not  
查询工资不大于1500  
select * from emp where not(sal>1500)  
5、 in  
查询员工编号是7788,7369,7566  
select * from emp where empno in(7788,7369,7566)  
查询员工姓名是  SMITH  JONES  SCOTT  
select * from emp where ename in('SMITH',  'JONES',  'SCOTT')  
  
--3.模糊查询  
like  %  _  
注意:Oracle中是大小写敏感  
  
查询员工姓名中第二个字母是M的  
select * from emp  where ename like '_M%'  
  
select * from emp  where ename like '%M%'  
  
查询员工姓名中带_的  
select * from emp  where ename like '%1_%' escape '1'  
select * from emp  where ename like '%d_%' escape 'd'  
select * from emp  where ename like '%@_%' escape '@'  
select * from emp  where ename like '%#_%' escape '#'  
select * from emp  where ename like '%__%' escape '_'  
错误的  
select * from emp  where ename like '%%_%' escape '%'  
select * from emp  where ename like '%&_%' escape '&'  
  
---4.排序  
order by    desc   asc  
按照奖金从高到低排序  
  
select * from emp order by comm desc nulls last  
按照奖金从低到高排序  
select * from emp order by comm  nulls first  
  
  
  
四、函数  
  
--1.单行函数  
1.1字符串类型  
 lower--转小写  
 select lower('ORACLE') from dual  
 select ename,lower(ename) from emp  
 upper--转大小  
   
 initcap--首字母大写  
   
 substr--截取  
   
 oracle截取时起始位置写0和1是一样的  
 select substr('qwertyui',0,4) from dual;--qwer  
 select substr('qwertyui',1,4) from dual;--qwer  
  select substr('qwertyui',2,4) from dual--wert  
   
 length--长度  
  select length('qwertyui') from dual--8  
 replace--替换  
  select replace('qwertyui','qw','aa') from dual-- aaertyui  
   
 concat--连接两个字符串函数  ===推荐使用||  
 select concat('aaa' ,'bbb') from dual  
  select concat(concat(concat('aaa' ,'bbb'),'ccc' ),'ddd')  from dual  
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇查看、修改oracle字符集,查看ora.. 下一篇jdbc:oracle:thin:@192.168.3.98:..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目