Oracle(三)

31.SQL语句的类型;

DML(Data Manipulation Language 数据操作语言): select update insert delete

DDL(Data Definition Language 数据定义语言):  create table,alter table, drop table, create user

DCL(Data Control Language 数据控制语言): commit rollback

32.read only oracle 自己实现的事务,支持规范中的两种,默认为read commit

33.  隐式插入空值

显式插入空值

insert into emp(empno,ename,sal,deptno) values(1002,'Mike',null,10);

34. 地址符 &

insert into emp(empno,ename,sal,deptno) values(&empno,&ename,&sal,&deptno);

可以字符忘记加引号

insert into emp(empno,ename,sal,deptno) values(&empno,'&ename',&sal,&deptno);

也可以是表

select * from &a;

35.根据一个表创建另一个表

   create table emp10 as select * from emp where 1=2; 此时只创建表结构

一次性将emp10号部门的员工插入到emp10

insert into emp10 select * from emp where deptno=10;

36. 子查询实现一次插入多条记录(DML语句均可嵌套子查询)

create table emp20 as select empno,ename,sal from emp where 1=2;

37. deletetruncate的区别:

delete逐条删除;truncate摧毁,再重建

delete会产生碎片;truncate不会

 delete不会释放空间;truncate

delete可以闪回;truncate不可以

oracle deletetruncate 效率高

38. set feedback off 关闭提示

39set feedback off 开启显示sql执行的时间

40. Oracle中的事务:

             事务的起始标志:DML语句为起始标志(自动开启事务)

             事务的结束标志:提交:显式提交:commit

                      隐式提交: DDL,exit(正常退出)

                 回滚: 显式回滚:rollback

                       隐式回滚:宕机,掉电,非正常退出

      savepoint a ;设置保存点

      rollback to savepoint a; 回滚到保存点

41. rowid:行地址:行数据在磁盘上地址

              select rowid,empno,ename from emp;

42. 使用子查询创建表

        create table empincome

        as

        select empno,ename,sal,sal*12 annlsal,sal*12+nvl(comm,0) total from emp;

43    create table empincome2

        empno,ename,sal,annlsal,total)

        as

        select empno,ename,sal,sal*12,sal*12+nvl(comm,0) from emp;

44. 追加新列,修改列 删除列 重命名列

alter table test2 modify tname varchar2(30);

alter table test2 drop column image;

alter table test2 rename column tname to username;

45. 删除表

drop table EMPINCOME2; 并没有真正删除,还在回收站(只有普通用户才有回收站)

查看回收站

show recyclebin

清空回收站

purge recyclebin

彻底删除表

drop table empincome purge;

46.check约束

          create table test4

          (tid number,

          tname varchar2(20),

          gender varchar2(4) check (gender in ('','')))

47.给约束取名:有助于找错

   create table myperson

   (personID varchar2(18) constraint myperson_PK primary key,

   name     varchar2(20) constraint myperson_name not null,

   gender   varchar2(4)  constraint myperson_gender check (gender in ('','')),

   email    varchar2(40) constraint myperson_email_U unique

                          constraint myperson_email_N not null,

  deptno   number constraint myperson_FK references dept(deptno) ON DELETE CASCADE);

48.视图:

  create view empincomeview

  as

  select empno,ename,sal,sal*12 annlsal,sal*12+nvl(comm,0) total from emp;

create view empincomeview

49.序列:

create sequence myseq;

insert into testseq values(myseq.nextval,'aaa');

 50.索引:通过索引可以将不连续的数据看成连续的

        create index myindex on emp(deptno);

 51. 同义词:

        create synonym hremp for hr.employees;

create synonym hremp for hr.employees

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值