支持多用户、大事务量的事务处理
数据安全性和完整性的有效控制
2、优点
可用性强
可扩展性强
数据安全性强
3、Oracle介绍
--设置一行显示的长度
set linesize 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','abcdefghijklmnopqrstuvwx
--返回beg
--14、反转字符串 -reverse()
---------数值的处理--------------
--1、返回数字的绝对值 -abd()
--2、返回数字的四舍五入 -round(原数值,小数位数)
--3、向上取整 -ceil()
--4、向下取整 -floor()
--5、取模操作 - mod()
--6、返回数字的正负性 sign()
--当参数大于0时,返回1
--7、返回数字的平方根-sprt()
--8、乘方运算 -power()
--9、截取数字 -trunc(原数值,小数位数)
--10、将ASCLL码转换为字符 chr(65)
--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?