Oracle基础知识【1】

目录:

  1、Oracle创建库、表

  2、Oracle数据怎删查改操作

  3、Oracle数据约束条件 

Oracle创建库、表:

create user user05 identified by 123456 --创建Oracle新用户
grant CONNECT,RESOURCE,DBA TO user05 --GRANT语句授予user05用户权限
drop user user04;--删除用户

alter user user01 identified by 111111;--修改用户密码

CONNECT user05/123456   --连接创建用户

select * from CLASSINFO; --查询数据
INSERT into CLASSINFO(CLASSNAME) values('明');--插入数据
update classinfo set CLASSID=2.0,CLASSNAME='大' where CLASSID=1.0 --修改数据
delete from classinfo where id=1;--删除数据
drop table classinfo;--删除表
drop sequence seq_stu;--删除序列

--创建表

create table classinfo(

id number primary key ,
classname varchar(10) not null
);

增加列

3、删除列

4、修改列的类型

5、复制表

 相当于新建一张表,只有表名和原有的表不一样

表约束:

1、非空约束 Not Null 限定表种某些值不能为空的约束

写法1:create table stu2(sid number,name varchar2(255) constraint nu not null,age number)

写法2:create table stu3(sid number,name varchar2(255) not null, age number)

删除非空约束

唯一约束UNIQUE(限定某一列的值不能重复)

 写法:create table stu6(sid number,name varchar2(255) unique,age number)

主键约束Primary Key  【主键不会重复】

写法

create table stu9(sid number primary key,name varchar2(255),age number)

给已有的表添加主键约束

 

外键约束foreign key

 写法:

create table worker(wid number primary key,name varchar2(255),jobid number,

constraint fk_worker foreign key(jobid) references job(jid) on delete cascade

)

 给已有的表添加外键约束

 创建检查约束第一种方式:  (aabb为约束名字,随意赋予)

写法:

create table stu(sid number,name varchar2(255),age number check(age > 20 and age <90))

实列:Oracle实现自增标识

create table dectuser(
userid integer primary key, /*主键*/
name varchar2(20),
sex varchar2(2)
);

create sequence dectuser_tb_seq minvalue 1 maxvalue 99999999
increment by 1
start with 1; /*步长为1*/

create or replace trigger dectuser_tb_tri
before insert on dectuser    /*触发条件:当向表dectuser执行插入操作时触发此触发器*/
for each row         /*对每一行都检测是否触发*/
begin             /*触发器开始*/
select dectuser_tb_seq.nextval into :new.userid from dual;
              /*触发器主题内容,即触发后执行的动作,在此是取得序列dectuser_tb_seq的下一个值插入到表dectuser中的userid字段中*/
end;
insert into dectuser(name,sex) values ('feng','男');
insert into dectuser(name,sex) values ('feng','男');
insert into dectuser(name,sex) values ('feng','男');
select * from dectuser;

猜你喜欢

转载自www.cnblogs.com/yhm9/p/11269137.html
今日推荐