Oracle 数据库

1、 Oracle 数据库有如下几个强大的特性:

  支持多用户、大事务量的事务处理

  数据安全性和完整性的有效控制

    支持分布式数据处理

2、优点

  可用性强

  可扩展性强

  数据安全性强

    稳定性强

3、Oracle介绍

    Oracle 5.0 率先推出了分布式数据库、客户/服务器结构等崭新的概念。

    Oracle 6 不仅有更为高级的技术,还开始支持对称多处理机(SMP)。

    Oracle 8 中加入了对象技术,成为“关系-对象”数据库系统。

    20世纪90年代末期,Oracle推出了更新的版本-9i,全面支持Internet应用。

 4、设置环境变量
--设置一行显示的长度
set linesize 300;   300表示字符的长度
oracle数据库中数据是分页显示的。
--修改每页显示数据的长度
set pagesize 30;
--创建函数
--必须有返回值
--对权限得维护
--如果是对象权限
grant select on emp to xiaoming with grant option
--如果是系统权限
system给xiaoming权限时
grant connect to xiaoming with admin

 

格式化查询命令:

1、设置列显示的形式:column 单价 format $999,999.00;

2、设置显示列的宽度,当数值超过显示宽度是,超过部分会折叠在下一行显示:

eg: cloumn 商品名称 format A20 wrapped

 

--Orcle 数据库的sql语句
--查询唯一记录
select distinct(列名) from 表名
--关于连个表
union --滤除两表中的重复数据
union all  --只是将两个表中的数据进行简单整合,但不剔除其中的重复数据。

--求交集-intersect运算
--intersect 运算是指交集运算,该运算可以获得连个表中数据的结果集(指同时存在与两个表中的数据)
select stu_name from a_students
intersect
select stu_name from b_students
go
--求差集-minus运算
minus 是集合间的减法运算,该运算将返回第一个集合中存在,而第二个集合中不存在的记录

--注意:以上4种集合运算,可以进行混合运算,优先级和相同的。(从左至右)
-----------------------连接-----------------------------
--自然连接-natural join 查询含有相同字段的表(同名列)
--完全连接-full join ... on 指定连接条件

--层次化查询
select market_id,market_name from market
start with market_name='亚洲'
--层次化查询的相关函数
sys_connect_by_path(列名,'分隔符')
select market_id , market_name,sys_connect_by_path(market_name,'/')
market_path from market
start with market_name='亚洲'
connect by prior parent_market_id = market_id
go

--bin_to_num()将二进制数据转换为数值型
--字符型的处理
--1、像左补全字符串
Lpad(string,padded_length,[pad_string])
--其中第一个参数(string)是指定原始字符串;第二个参数(padded_length)是指定格式化之后的字符串长度,第三个参数(pad_string)是指定使用哪个字符填充不足位数.
--2、像右补全字符串-rpad();  --语法同上
--3、返回字符串的小写形式-Lower()
--4、返回字符串的大写形式-Upper()
--5、单词的首字母大写-initcap()  --如果是一句话则每个单词的首字母都为大写。
--6、返回字符串长度-length() --注意:也可以是其他数据类型
--7、截取字符串
substr(string,start_index,times)  --第一个参数是指原字符串,第二个参数是指要截取的开始位置,第三个参数是指第几次出现
--8、获取字符串出现的位置
instr(string, sub_string,start_index,times) --注意,索引从1开始
--9、删除字符串左侧空格 -Ltrim()
--10、删除字符串右侧空格 -Rtrim()
--11、删除字符串两侧的空格 trim()
--12、串联字符串 - concat(string1,string2)
--13、翻译字符串 -translate()
select translate('+-*','1+23-4','abcdefghijklmnopqrstuvwxyzz') tarns from dual;
--返回beg
--14、反转字符串 -reverse()  --如果是汉字则会乱码


---------数值的处理--------------
--1、返回数字的绝对值 -abd()
--2、返回数字的四舍五入 -round(原数值,小数位数)
--3、向上取整 -ceil()
--4、向下取整 -floor()
--5、取模操作 - mod()
--6、返回数字的正负性 sign()
--当参数大于0时,返回1  当参数等于0时,返回0  当参数小于0时,返回-1
--7、返回数字的平方根-sprt()
--8、乘方运算 -power()
--9、截取数字 -trunc(原数值,小数位数)
--10、将ASCLL码转换为字符 chr(65)    --返回A
--11、格式化数值 to_char(原数值,格式)

 

--查询表结构
desc table_name
--怎么获取有哪些用户在使用数据库
select username from V$session;
--数据表中的字段最大数是多少?
表或视图中的最大列数为 1000.
--怎么查得数据库的sid?
Select name from V$database;
也可以直接查看init.ora文件。
--如何在oracle服务器上通过sqlplus查看本机ip地址?
select sys_context('userenv','ip_address') from dual;
如果是本机登陆数据库,只能返回127.0.0.1
unix 下怎么调整数据库的时间?
su-root
date -u 08010000
--如何查询server是不是ops?
select * from V$option;
如果parallel server = true 则有ops。
--如何查询每个用户的权限
select * from DBA_SYS_PRIVS;
--如何将表移动表空间?
ALTER TABLE TABLE_NAME MOVE TABLESPACE_NAME;
--如何将索引移动表空间?
ALTER INDEX INDEX_NAME RESUILD TABLESPACE TABLESPACE_NAME;

28. 在LINUX,UNIX下如何启动DBA STUDIO?

     OEMAPP DBASTUDIO

     29. 查询锁的状况的对象有?

     V$LOCK, V$LOCKED_OBJECT, V$SESSION, V$SQLAREA, V$PROCESS ;

     查询锁的表的方法:

     SELECT S.SID SESSION_ID, S.USERNAME, DECODE(LMODE, 0, ’None’, 1, ’Null’, 2, ’R

     ow-S (SS)’, 3, ’Row-X (SX)’, 4, ’Share’, 5, ’S/Row-X (SSX)’, 6, ’Exclusive’, T

     O_CHAR(LMODE)) MODE_HELD, DECODE(REQUEST, 0, ’None’, 1, ’Null’, 2, ’Row-S (SS)

  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值