Oracle 基本操作:

用户名: scott tiger;sys manager;system zhangyinlong sysdba
进入sqlplus:
运行下面输入:sqlplus /nolog(dos 窗口); sqlplusw /nolog(window 窗口)
登录命令:conn username/pwd@instance (例如:conn scott/tiger@sample)


Oracle sql:

2 SQL 查询 和 SQL 函数
SQL 简介:
SQL 支持如下类型的命令:
A:数据定义语言(DDL):CREATE,ALTER,DROP
新建表:
create table vendor_master(
                           vencode varchar2(5),
                           venname varchar2(20),
                           venadd1 varchar2(20),
                           venadd2 varchar2(20),
                           venadd3 varchar2(20) );
修改列:
alter table vendor_master modify(venname varchar2(25) );
添加列:
alter table vendor_master add (tel_no varchar2(12),
                               tngst_no number(12) );
删除列:
alter table vendor_master drop column tngst_no;
删除表:
truncate table vendor_master;(只删除表的记录)
drop table vendor_master;(删除表)
查看表结构:
desc vendor;
B:数据操纵语言(DCL): INSERT,SELECT,DELETE,UPDATE
insert into vendor_master(vencode,venname,venadd1,venadd2,venadd3,tel_no)
values('voo1','zhang san','v1','v2','v3','13663862925');
C:事务控制语言(TCL):COMMIT,SAVEPOINT,ROLLBACK
SQL> update vendor_master set venname='aaa' where vencode='voo1';
SQL> SAVEPOINT mark1;
SQL> DELETE FROM vendor_master where vencode='voo1';
SQL> SAVEPOINT mark2;
SQL> ROLLBACK TO SAVEPOINT mark1;
SQL> COMMIT;
D:数据控制语言(DCL):GRANT,REVOKE
GRANT privileges ON object-name to username;
REVOKE privileges ON object-name from username;


3 锁和表分区
3.1 锁
锁定的优点:保持数据的 一致性,完整性,以及数据库操作的并发性。
锁的级别:行级锁,表级锁
3.2 表分区
表分区的优点:
             1:改善表的查询性能;
             2:表更容易管理;
             3:便于备份和恢复,可以独立的备份和恢复每个分区;
             4:提高数据的安全性;
表分区的分类:
            1:范围分区 根据表的某一个列或一组列的值的范围;
               create table sales
               (
                  product_id varchar2(5),
                  sales_date date not null,
                  sales_cost number(10)
               )
               partition by range (sales_cost)
               (
                 partition p1 values less than (1000),
                 partition p2 values less than (2000),
                 partition p3 values less than (3000)
               );
            insert into sales(product_id,sales_date,sales_cost) values('p1',to_date('2009-11-30','yyyy-MM-dd'),2002);
            2:散列分区 通过在分区键值上执行一个散列函数决定数据的物理位置;
             create table employee
             (
               emp_id number(4),
               emp_name varchar2(14),
               emp_address varchar2(15),
               department varchar2(10)
             )
             partition by hash (department) partitions 4;
            3:复合分区 是范围分区和散列分区的结合;
            4:列表分区 允许用户明确地控制行到分区的映射;
             create table employee1
             (
               emp_id number(4),
               emp_name varchar2(14),
               emp_address varchar2(15),
               department varchar2(10)
             )
             partition by list (emp_address)
             (
               partition north values ('芝加哥'),
               partition west values ('旧金山','洛杉矶'),
               partition south values ('亚特拉大','达拉斯','休斯顿'),
               partition east values ('纽约','波士顿')
              );
表分区的操作:
             1:表分区的插入和其它插入操作一样,系统会自动将各个数据分到相应的表分区 ;
             2:表分区的查询操作: select * from sales partition (p3)(查询p3分区的数据) ;
             3: 可以删除某个表分区的数据:delete from sales partition (p3)(删除表sales分区为p3的数据);
分区的维护操作:
             1:添加分区 alter table sales add partition p4 values less than (4000) ;
             2: 删除分区 alter table sales drop partition p4;
             3: 截断分区 alter table sales truncate partition p3;
             4: 合并分区 alter table sales merge partitions p1,p2 into partition p2;
             5: 拆分分区 alter table sales split partition p2 at (1000) into (partition p1, partition p2);
             6: 重命名表分区 alter table sales rename partition p2 to p21;

4 数据库对象
4.1 同义词
同义词分类:私有同义词,共有同义词
私有同义词:create synonym emp for scott.emp;
共有同义词:create public synonym emp for scott.emp;
4.2 序列
创建序列:create table toys (toyid varchar2(20),toyname varchar(30),toyprice number(5));
          create sequence toys_seq start with 10 increment by 2 maxvalue 2000 nocycle cache 30;
访问序列:insert into toys (toyid, toyname, toyprice) values('p'||toys_nextval,'aa',334);
          select toys_seq.currval from dual;
更改序列:alter sequence toys_seq maxvalue 5000 cycle;
删除序列:drop sequence toys_seq;
4.3 视图
创建视图:create or replace view dept_sum_vw(name,minsal,maxsal,avgsal) as select d.dname,min(e.sal),max(e.sal),avg(e.sal) from emp e,dept d where e.deptno=d.deptno group by d.dname
4.4 索引
4.4.1 唯一索引 SQL> create unique index item_index on itemfile (itemcode);
4.4.2 组合索引 SQL> create index comp_index on itemfile (p_category, itemrate) ;
4.4.3 反向键索引 SQL> create index rev_index on itemfile (itemcode) reverse;
4.4.4 位图索引 SQL> create bitmap index bit_ind1 on order_detail (itemcode);
4.4.5 基于函数的索引 SQL> crate index exp_ind on itemfile (qty_hand*itemrate);
4.4.6 索引组织表 SQL> create table ind_ort_tab (vencode number(4) primary key, venname varchar2(20)) organization index;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13636837/viewspace-605820/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/13636837/viewspace-605820/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值