oracle数据库应用(2)
1.序列
1.1 序列和表是平级的。
1.2 一个序列可以给多张表共用
1.3 create sequence seq_num
startwith 1
maxvalue nomaxvalue
cache 20
2.表空间
create tablespace tab
datafile 'E:\xxx.dbf' size 10m
maxsize unlimited
3.函数
单行函数
1.日期函数:Monthes_between 月份之差
2.数字函数: round() 四舍五入 trunc() 截断
3.字符串函数: upper() lower() initCap() concat() substr() length() lengthb() instr()
4.转换函数 :to_date(字符串) to_char(数字) to_number()
5.nvl nvl2
6.decode 相当于 case when then else end
分组函数
分析函数
1.rank 特点:1 1 3
2.row_nubmer 1 2 3
3.desrank 1 1 2
4.创建/删除表空间权限不足
用system.登录,grant授权然后就可以了。
5.查询当前用户所能管理的所有表空间
select tablespace_name from user_tablespaces
6.设置只读
------------------------------------------------------------------
4.同义词
grant create synonym to SCOTT
GRANT CREATE PUBLIC SYNONYM TO scott;
create synonym ee for SCOTT.emp
create public synonym tt for SCOTT.emp
grant select on emp to 具体的用户或者是模式
grant select on emp to public
可以访问了
5.索引
索引作用:快速访问数据的途径,提高数据库的性能。
SQL Server 索引:唯一索引(1) 复合索引 聚集索引(3) 非聚集索引 全文 索引 主键索引(2)。
B数索引
算法
Bound mismatch: The generic method sort(List<T>) of type Collections is not applicable(合适) for the arguments (List<Student>). The inferred(推断) type Student is not a valid substitute(代用品) for the bounded parameter <T extends Comparable<? super T>>
http://blog.csdn.net/xjyzxx/article/details/18465661
http://www.cnblogs.com/pipi-style/p/4738072.html
http://hexo.trity.cc/2015/08/24/Arrays.sort%E5%92%8CCollections.sort%E5%8C%BA%E5%88%AB/
http://lib.csdn.net/article/datastructure/9282
6.表分区
create table orders
(
order_id number,
order_date date,
order_total number
)
partition by range(order_date)
(
partition p1 values less than (to_date('2005-01-01','yyyy-mm-dd')),
partition p2 values less than (maxvalue)
)
--添加数据
insert into orders values(1,sysdate,100)
select * from orders partition(p2)
SELECT table_name,partition_name
FROM user_tab_partitions
WHERE table_name=UPPER('orders');
create table intervalOrders
partition by range(order_date)
interval(numtoyminterval(1,'YEAR'))
(partition P1 values less than (to_date('2015-01-01','yyyy/mm/dd')))
as select * from orders;
insert into intervalOrders values(2,to_date('2010-01-01','yyyy/mm/dd'),200)
select * from intervalOrders partition(SYS_P42)
insert into intervalOrders values(3,sysdate,300)