Oracle数据库-简单代码

1.创建用户名:

create user 用户名 identified by 密码 [account unlock|lock];

给用户名授权

grant connect,resource to 用户名;

撤销权限

revoke connect,resource to 用户名;

修改用户名

alter user 用户名 identified by 新密码 [acount unlock|lock];

修改密码

password;

旧口令:

新口令:

重新键入新口令:

2.创建表

create table 表格

(

列名1 数据类型 [约束],

列名2 数据类型 [约束],

列名3 数据类型 [约束],

列名4 数据类型 [约束],

)

/

约束条件有:

1.非空约束 not null

2.主键约束 primary key

3.外键约束 foreign key...references ...

4.唯一约束 unique

5.检查约束 check

6.默认约束 default

设置约束的方法(用户名是jerry 密码:tiger)

1. 创建表的时候约束

create table 表名 (列名 数据类型 [约束]...)

2.修改表的方式添加约束

alter table 表名 add constraint 约束名 约束的关键字 (约束的列名);

【】设置主键

alter table infos add constraint infos_pk_stuid primary key (stuid);

【】设置检查约束

alter table infos add constraint infos_ck_gender

check(gender='男' or gender='女');

【】设置唯一约束

alter table infos add constraint infos_un_stuname unique (stuname);

【】设置外键

alter table scores add constraint scores_fk foreign key (stuid) references infos (stuid);

修改表的结构

【】增加列(字段)

alter table 表名 add 列名 数据类型 约束;

【】修改列名(字段名)

alter table 表名 rename column  旧列名 to 新列名;

【】修改列的数据类型

alter table 表名 modify 列名 新的数据类型;

【】删除列(字段)

alter table 表名 drop column 列名;

【】修改列的约束

alter table 表名 modify 列名 数据类型 新的约束;

【】增加约束

alter table 表名 constraint 约束名字;

【】删除约束

alter table 表名 drop constraint 约束名字;

【】修改表名

rename 旧表名 to  新表名;

3.插入数据

inser into 表名(列名...) values (值...);

提交

commit

?查询新增一个表名赋值法;---先忽略说法

insert into 新表名 select * from 旧表名;

查询所有表名的列名约束

select constraint_name,search_condition form all_constraints where table_name='大写表名';

创建表

create table 新表名 as select ... from 旧表名  --复制表,根据结果集创建表,约束没有复制

修改更新表格

updater ...set...

例子如下:

update infos set gender='女', stuaddress='梁山泊',classno='1002' where stuname='阮小二';

删除表名---不能恢复,请谨慎删除表名

truncate table 表名;

删除表名或列名---这个删除可以用回滚恢复上一步删除的内容

delete from 表名 [where 列名条件]

回滚

rollback

保存点

savepoint 一个字母;

回滚到保存点

rollback to 保存点的字母;

连字符

||

如:select 列名||''||列名 from 表名;

as的用法

select ename||'job is '||job as '员工详细信息' from emp;

!=  表示'不等于’

如:select * from emp where sal!=3000;

and 的用法

如:select * from emp where sal!=3000 and job!='SALESMAN';

distinct 消除重复行

如:

DEPTNO

------

20

30

30

20

30

30

10

20

10

30

20

30

20

10

14 rows selected

select distinct deptno from emp;

运行如下结果:

DEPTNO

------

30

20

10

not null的用法

如:select * from emp where comm is not null;

in的用法

如:select * from emp where job in('SALESMAN','PRESIDENT','ANALYST');

between...and... 的用法

如:select * from emp where sal between 2000 and 3000;

4.笛卡而集

select * from t1 cross join t2;

内连接[inner] join....on...

如:select * from (select * from dpt) t1 join (select * from emp) t2 on t1.deptno=t2.deptno;

左连接 left [outer] join...on....(译:左表全部连接,不匹配的不连接)

如:select * from (select * from dpt) t1 left join (select * from emp) t2 on t1.deptno=t2.deptno;

右连接 right[outer] join...on....(译:右表全部连接,不匹配的不连接)

如:select * from (select * from dpt) t1 right join (select * from emp) t2 on t1.deptno=t2.deptno;

SQL语言--结构化查询语言  增add 删drop 改alter 查select

DDL--数据定义语言  create创造 ,alter修改, drop删除

DML--数据操作语言  insert into增加,delete from删除,update修改更新

DQL--数据查询语言  select...from... where... order by ... group by . having ..

TCL--事务控制语言  commit提交,rollback回滚,savepoint创建保存点

DCL--数据控制语言  grant授权,revoke撤销权限

(0)

相关推荐