码迷,mamicode.com
首页 > 数据库 > 详细

oracle学习笔记(六)

时间:2015-08-15 12:02:03      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:oracle

1.创建一个表

不加约束

create table t_user(
   id number,--类型是number类型
   name varchar2(20),--varchar2()可以变化
   gender char(2),
   birthday date default sysdate 默认是当前日期
)

加上约束

create table t_user2(

  id number ,

  name varchar2(20) check(length(name)>2),

  gender char(2) check(gender in(‘男‘,‘女‘)),

  birthday date default sysdate

)

-- 建表并插入数据。

create table t_emp as select * from emp;

--建表不插入数据

create table t_emp2 as select * from emp where 1=2;

--建表只插入某些列 如果插入有表达式必须指定列名

create table t_emp3 as select ename,sal,sal*12 totalSal from emp where 1=2;

约束:
表 t_user
id :主键
name :非空
regDate:默认值为当前时间
cardnum :非空、唯一
age :检查,应大于等于0
deptno :外键,引用dept.deptno

创建表t_user:

 create table t_user(
    id number constraint PK_USER_ID primary key,
    name varchar2(20) constraint NOTNULL_USER_NAME not null,
    regDate date default sysdate,
    cardnum varchar2(20) constraint NOTNULL_USER_CARDNUM not null
    constraint UNIQUE_CARDNUM unique,
    age number constraint CHECK_AGE check(age>0),
    depno number constraint FK_USER_DEPTNO references dept(deptno)
 )

查看本表中的所有的约束:
select * from user_constraints where table_name=‘T_USER‘;

-- 创建视图,默认是可以对那种对应真实列的字段进行DML操作。
create view myview
as
select empno, ename, sal, (sal * 12) AS total from emp
-- 只读的视图
create view myview
as
select empno, ename, sal, (sal * 12) AS total from emp
with read only;

-- 创建视图,注意这里有deptno=10的条件。
-- 这时可以通过视图插入deptno=20记录。
create or replace view myview
as
select empno, ename, sal, (sal * 12) AS total, deptno from emp where deptno=10

技术分享

使用视图不可以提高性能,因为视图就一个事先存储好的SQL查询。

创建序列:

create sequence myseq;
修改:
alter sequence myseq
   maxvalue 25
   cache 10
   cycle;//设置循环序列 就是序列到达最大值 25 的时候又从1开始
删除:
drop sequence myseq;
查询:
select myseq.nextval from dual;
select myseq.currval from dual;

版权声明:本文为博主原创文章,未经博主允许不得转载。

oracle学习笔记(六)

标签:oracle

原文地址:http://blog.csdn.net/u014010769/article/details/47679825

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!