《Oracle总结 05》--视图、序列、索引及约束等用法

1:创建一个视图,包含20号部门的员工信息,字段:empno,ename,sal,job,deptno
CREATE VIEW v_emp007_20  AS 
  SELECT empno,ename,sal,job,deptno FROM emp_xiangyoulu WHERE deptno=20;
SELECT * FROM v_emp007_20;

2:创建一个序列seq_emp_no,从10开始,步进为10
create sequence seq_emp008_no start with 1 increment by 2;
CREATE SEQUENCE seq_emp007_no START WITH 10 INCREMENT BY 10;

3:编写SQL语句查看seq_emp_no序列的下一个数字
select seq_emp007_no.nextval from dual;
select seq_emp008_no.nextval from dual;

4:编写SQL语句查看seq_emp_no序列的当前数字
select seq_emp007_no.currval from dual;

5:为emp表的ename字段添加索引:idx_emp_ename 
create index idx_emp_ename on emp_xiangyoulu(ename);

6:为emp表的LOWER(ename)字段添加索引:idx_emp_lower_ename
CREATE INDEX idx_emp007_lower_ename ON emp_xiangyoulu(LOWER(ename));

7:为emp表的sal,comm添加多列索引
CREATE INDEX idx_emp007_sal_comm ON emp_xiangyoulu(sal,comm);

8:创建myemployee表,字段:
  id NUMBER(4) ,
  name VARCHAR2(20),
  birthday DATE,
  telephone VARCHAR2(11)
  scoreNUMBER(9,2)
  其中id作为主键,name要求不能为空,telephone需要唯一,score值必须>=0
CREATE TABLE myemployee_xiangyoulu(
id NUMBER(4) PRIMARY KEY,
name VARCHAR2(20) NOT NULL,
birthday DATE,
telephone VARCHAR2(11) ,
score NUMBER(9,2),
CONSTRAINT myemployee_xiangyoulu_bir_uc UNIQUE(telephone)
);
ALTER TABLE myemployee_xiangyoulu
ADD CONSTRAINT employee_xiangyoulu_score_check
CHECK(score>=0);

猜你喜欢

转载自blog.csdn.net/weixin_39039342/article/details/85037073