Oracle基础命令操作

本文详细介绍了Oracle数据库的一些基本操作命令,包括连接数据库、查询数据、管理表以及数据的增删改查等核心操作,旨在帮助初学者快速掌握Oracle数据库的使用。
摘要由CSDN通过智能技术生成
--创建表空间
create tablespace xiaocan
datafile 'C:\oracle\xiaocan.dbf'--数据库服务器下的路径
size 100m --默认大小
autoextend on  --是否自动增长
next 10m; -每次自定增长的大小
--删除表空间
drop tablespace xiaocan;
--创建用户 此时还无法登录
create user xiaocan  --用户名
identified by xiaocan   --密码
default tablespace xiaocan;   
--对用户分配权限 否则无法登录
--oracle中常见角色   
connect --连接角色 基本角色
resource--开发者角色
dba --超级管理员角色  一般不给


--给xiaocan授予dba 角色
grant dba to xiaocan;

--创建一个person表
create table person(
pid number(20),
pname varchar2(10)
);
--修改表结构
--添加一列
alter table person add(gender number(1));
--修改列类型 多个用,隔开
alter table person modify (gender char(1));
--修改列名称
alter table person rename column gender to sex;
--删除一列
alter table person drop column sex;
--查询表中数据
select * from person;

--数据的增删改  增删改必须要提交事务
insert into person(pid,pname) values(2,'小王');
commit;

update person set pname='小小' where pid=1;
commit;

--三个删除   
--删除表中全部记录
delete from person;
--删除表结构
drop table person;
--先删除表 再次创建表 效果等同于删除表中全部记录
--在数据量大的情况下 尤其在表中带有索引的情况下 该操作效率高
--索引可以提高查询效率 但会影响增删改效率
truncate table person;


--序列 默认从1开始 一次递增 主要用来给主键赋值使用
--序列不真的属于某一个表 但可以逻辑和表做绑定
--dual :虚表 只是为了补全语法 没有任何意义
create sequence s_person;
select s_person.nextval from dual;
select s_person.currval from dual;

--使用序列
insert into person(pid,pname) values(s_person.nextval,'小王');
commit;


--scott用户 密码 tiger
--解锁 scottyonghu
alter user scott account unlock;
--解锁scott用户的密码 此句也可以重置密码
alter user scott identified by tiger;

--使用scoot 用户登录

--单行函数   作用于一行 返回一个值

--字符函数  
select upper('yes') from dual; --大小写转换
select lower('YES') from dual;
--数值函数
select round(26.51,1) from dual;  --四舍五入  后面的参数标识保留的位数

--日期函数
--查询出emp表中所有员工入职距离现在几天
select sysdate -e.hiredate from emp e;
--算出明天此刻
select sysdate+1 from dual;
--查询除emp表中多有员工入职距离现在几个月
select months_between(sysdate,e.hiredate) from emp e;
--查询出 emp表中所有员工入职距离现在几年
select  months_between(sysdate,e.hiredate)/12 from emp e;
--查询出所有员工入职距离现在几周
select round((sysdate-e.hiredate)/7) from emp e;
--转换函数
--日期转字符串
select to_char(sysdate,' fm yyyy-mm-dd hh24:mi:ss') from dual; --fm 去掉零  hh后面加上24 即可24小时
--字符串转日期
select to_date(  '2020-4-21 4:16:47',' fm yyyy-mm-dd hh24:mi:ss') from dual;
--通用函数
--算出emp表中所有员工的年薪
--奖金里面有null值 如果null值和任何数字做算术运算结果都为null;
--nvl函数  nvl(a,0) 如果a为null 则a=0
select e.sal*12+nvl(e.comm,0) from emo e;

--条件表达式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值