传智播客java培训ORACLE总结(3)

 

ORACLE的学习已经告一段茖,今天已经开始HIBERNATE的学习,总体感觉挺良好的,虽然很多的知识不能记住,但是在使用的时候能够迅速的找对方法来解决相应的问题,只要勤加练习,就可以记住。只不过,时间有珢,HIBERNATE的课程也只有三天的时间,所以在这期间我的任务是尽量吸引,在花放假的时候来复习。今天把ORACLE最后的的笔记整理。

我们班的学习氛围非常的好,以前上大学的时候一个教室都没有上自己的习惯,但是现在在这儿,我感觉比我上大学那儿,完全不是一个层次的,放假的时候教室也有很多人来这儿学习,我想即使不能在短时间成为高手,但付出和收获的永远是相辅相成的。

约束的类型及各自的定义方法

1. 非空 not null

2. 唯一,uniqu

3. 主键 primary key

a) 定义表时直接在字段上定义

b) Constraint名称 primary key()

c) Alter table 表名

Add constraint 名 primary key ()

d) 组合主键
1.表内部。constraintprimary key(1,列2)

2.表外部

Alter table 表名

Add constraint 名 primary key(1,列2);

B种方法是在项目中使用较频繁的,因为这样可以将语句和约束相分开来,便于查看。

4.外键

Constraint 名 foreign key()  references 表名(字段)

一张表的一个字段可以引用一个本表的主键。

查看约束

Select * from user_constraints where table_name=’’;

4. CHECK 约束

a) Add constraint 名字 check(salary>6000)

删除约束:

Alter table tableName

Drop constraint 约束的名称

删除主键和相关属性

Constraint :约束

1.为指定的人群(比如重庆人)提供供餐

2.提供会员机制

在实际的应用中是,单独创建约束,这样就要以实现了表与约束的分离。

索引:

--加快查询速度

Create INDEX index on table (column[,column]);

Drop INDEX index;

1. 是怎么整一千万条记录的啊?

2. 现在才知道当初我的做法是多么的笨!

3. 在实现项目中创建索引的技巧。

同义词  

就是数据库的一个别名

语法格式:

CREATE SYNONYM synonya

For Object;

删除

DROP SYNONYM 

视图:

就是一个命名的查询,是一个虚表.

创建语法格式:

CREATE[OR REPLACE] VIEW view

[(alias[,alias]).]

As subquery

[WITH READ ONLY];  设置为只读

修改视图:

  加上OR REPLACE 

禁止对视力执行,虽然可以,所以设置为只读

删除视图:

 Drop VIEW viewName;

查询视图:

Select * from use_views

行内视图:

TOP-ON分析法:

Rowunm这个伪列.

子查询这是标准的行内视图的使用

只返回最什么的前几行

Rownumber是谁给的值。

英文单词:alias :别名

匿名块:只使用一次的PL/SQL

存储过程:用于在数据库中完成特定的操作或者任务

执行速度特别快

Create procedure name
创建一个简单的存储过程,其的任务就是往DEPT表中插入数据,虽然没有多大的实际用途,也算是

create or replace procedure insertdept
(
 v_deptno in number,
 v_dname in varchar2,
 v_loc in varchar2,
)
is
begin 
     insert into dept(deptno,dname,loc)
     values(v_deptno,v_dname,v_loc)
end
执行存储过程的方法
exec insertdept(56,'A','C');

创建一个存储过程,该存储过程有返回值。
create or replace procedure updatedept
(
 v_deptno in number,
 v_dname in varchar2,
 v_loc in varchar2
  v_demo out varchar2
)
is
begin
(
 update dept set ...
 commit;
 v_demo='success';
)
end

declare
  v_demo varchar2(54)
 begin
  updatedept(...,v_demo);
  dbms_output.put_line(v_demo);
 end

ORACLE的课程完了,但是学习的步伐永远不会停止,IT行业人人都说新技术日新月异,每个程序员都得抓紧时间学习新技术,特别是我们做为新人,更应该付出比别人更多的时间,否则何必弥补曾经我们逝去的时间。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值