oracle数据库注解,oracle数据库常⽤语法(中⽂注释版)
-- 查看系统所有变量值
show all
-- 显⽰当前连接⽤户
show user
-- 显⽰表结构
desc 表名
-- 显⽰错误
show error
-- 退出
exit;
表空间是数据库中最⼤的逻辑单位,⼀个oracle中⾄少有⼀个表空间,varchar2是oracle独有的.每个数据库中都有⼀个名为system的表空间,即系统表空间,⽤于存放数据库字典表、程序单元、过程、函数包和触发器等。⼀个数据库⽂件只能与⼀个表空间相联系,每个表空间由⼀个或多个数据⽂件组成。
-- 创建表空间
create tablespace 表空间名
--创建表空间同时制定数据⽂件路径⼤⼩ (size后为表空间⼤⼩单位为K或者M)
create tablespace 表空间名 datafile '数据⽂件路径' size 10M autoextend on
-- 删除表空间
drop tablespace 表空间名
-- 修改表空间
alter tablespace 表空间名 add datafile '⽂件路径' size ⼤⼩
-
- 授予权限
grant ⾓⾊权限(⾓⾊)[,⾓⾊权限] to ⽤户
-- 查看当前⽤户的系统权限
select * from user_sys_privs
-- 收回权限
revoke ⾓⾊权限 from ⽤户
-- 创建表
create table 表名 (
字段名 数据类型 [not null] [primary key],
字段名 数据类型
);
-
- 提交
commit
-- 从现有的表中创建表并复制其数据
create table 表名 as select * from 被复制数据库.表名
-- 从现有的表中创建表并复制其表结构,不包括数据
create table 表名 as select * from 被复制数据库.表名 where 1=2
-- 修改表中字段(字段的属性修改)
alter table 表名 modify(字段1 字段类型, 字段2 字段类型)
-- 删除表中字段(字段是要删除的字段)
alter table 表名 drop (字段1, 字段2)
-- 修改表字段的名称
alter table 表名 rename column 原字段名 to 新字段名
-- 删除表(删除后可回收站查看并恢复)
drop table 表名
-- 删除表(删除后不可查看和恢复)
drop table 表名 purge
-- 查看回收站
show recyclebin
-- 查看回收站
select * from recyclebin
-- 清空回收站
purge recyclebin
-
- 新增数据
insert into 表名 (字段1,字段2...) values (value1, )
-- 复制其他表的数据新增到本表中
insert into 表名 select语句
--  修改
update 表名 set 字段=value where 条件
-- dual是⼀个伪表,⽤来构成select的语法规则 。伪列rowid是物理结构上的,每条数据记录到数据库的时候,都会有⼀个物理记录,通⼀条记录在不同查询中对应的rowid相同
-- 查看当前⽤户
select user from dual
-- 查询当前系统时间并格式化
select to_char(sysdate, 'yyyy-mm-d hh24:mi:ss') from dual
-- ⽤作计算器
select 2*8 from dual
--条件删除
delete from 表名 where 字段=条件value
--删除表后在创建⼀个和原有表结构相同的表
truncate table 表名
-- 创建⼀个保存点
savepoint 保存点名
-- 回滚到保存点(如果保存点创建后提交了,那么保存点会失效)
rollback  to 保存点名
-- 连接运算符 ||
select '名字为:' || value || '职位为:' value from 表名
-- union 并集并且去重复    union all 并集不去重
select * from 表名 where 条件 union select * from 表名 where 条件
-- ⾮集合⽅式实现并集并且去重 (效率要⾼很多)
select * from 表名 where 字段 in(条件1, 条件2)
-- 交集,查询公共部分 intersect
查询⼯资1000-2000区间和1500-2500之间的⼯资
select * from 表名 where ⼯资字段 1000 and 2000 intersect select * from 表名 where ⼯资字段 1500 and 2500 -- ⾮集合形式实现交集
select * from 表名 where ⼯资字段 1500 and 2000
-- 减集 minus
查询⼯资在1000-2000并且不在1500-2500的⼯资
select * from 表名 where ⼯资字段 1000 and 2000 minus select * from 表名 where ⼯资字段 1500 and 2500
-- ⾮集合形式实现减集
select * from 表名 where ⼯资字段 >=1000 and ⼯资字段 < 1500
-- 四舍五⼊
round(数值, 四舍五⼊的值)
-- 返回当前⽇期
select sysdate from dual
-- 在⽇期基础上加上n个⽉后的新⽇期
select sysdate,add_months(sysdate, 加上的⽉数) from dual
-- months_between 返回2个⽇期之间的⽉份数
-- 创建视图
create or replace view 视图名 as select 字段名 from 表名
-- 查询视图
select * from 视图名
-- 视图中插⼊值,插⼊的值是放到基表中,视图是虚拟表,并不存在数据
insert into 视图名(字段名) values(插⼊的值)
-- 更新视图值
update 视图名 set 字段名=字段值 where 条件
-- 删除
elete from 视图名 where 条件
-- 删除⼀个视图
drop view 视图名
-
- 同义词是数据库的⼀个别名
-- 管理员授予⽤户A创建同义词的权限
grant create synonym to A⽤户
-- 创建私有同义词
create synonym 同义词名 for 表名
-- 为视图创建同义词
create synonym 同义词名 for 视图名
-- 查询同义词
select * from 同义词名
-- 删除同义词
drop synonym 同义词名
-
- sys⽤户赋予⽤户A创建删除公有同义词的权限
grant create public synonym,drop public synonym to ⽤户A
-- sys⽤户回收⽤户A创建删除公有同义词的权限
revoke create public synonym,drop public synonym from ⽤户A
-- 创建公有同义词
create public synonym 同义词名 for 表名
-- 连接
conn system/密码
-- 索引是建⽴在数据库表中的某些列上⾯,是与表关联的,可提供快速访问数据的⽅式,但会影响增删改的效率-- 创建索引
create unique[可选] index 索引名 on 表名(字段名 字数是升序还是降序[可选])
-- 删除索引
drop index 索引名
-- 创建组合列唯⼀索引
create unique index 索引名 on 表名(字段名, 字段名)
-- 序列是oracle提供的⼀个产⽣唯⼀数值型值的机制 ,通常⽤于主键,能保证唯⼀,不保证联系
-- 创建⼀个序列
create sequence 序列名
-- 查看序列的下⼀个值oracle四舍五入
select 序列名.nextval from dual
--查看序列当前值
select 序列名.currval from dual
-- 删除序列
drop sequence 序列名
-- 分区表就是将⼀个表分成多个区,可以分别对不同的区进⾏操作,不同的区也可以保存在不同的位置,但实际还是⼀张表-- PLSQL
declare --定义⼀个常量
常量名 constant number(4,0): = 7788;
--定义变量
变量名 varchar2(20);
begin
--正式执⾏语句部分
select 字段名 from 表名 where 条件;
end;
-- 设置控制台显⽰
set serveroutput on
-- 创建⾓⾊
create role ⾓⾊名
-- 授予表A的 select 操作权限给⽤户B
grant select on  表A to ⽤户B
-- 其他的权限
grant update on 表A to ⽤户B
-- 撤销表A的update操作权限给⽤户B
revoke update on 表A from ⽤户B

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。