oracle数据库学习笔记

一、基本信息及命令
1.Oracle数据库需要启动的服务:
OracleServiceSID(数据库名)主服务
OracleTnsListener 监听器
2.连接数据库:
1)SQLPlus
2)SQL Developer
3)PL/SQL Developer
3.SID:
4.数据库命令:
命令注释: –
显示当前用户:show 用户名
切换用户:connect 另一用户名
conn sys as sysdba
新建账户:
create user 用户名 identified by 口令
修改密码:
1)alter user 用户名 identified by 修改后的口令;
2)password 用户民
新口令;
解锁普通账户:
alter user 用户名 account unlock;
上锁:
alter user 用户名 account lock;
5.什么是数据库:
位于硬盘上,实际存在的文件,这些文件组织在一起,在逻辑上形成了一个整体。
简单说,硬盘上的文件的逻辑集合。

6.数据库的文件能否直接操作:
不能。使用实例来操作存储在硬盘上的文件。
实例的概念:位于内存中的数据结构,通过它用户可以读取数据库中的数据。
7.文件:
1)数据文件:保存的所有数据 *.dbf
2)日志文件:记录对数据库的操作 *.log
3)控制文件:记录数据库的物理结构,如数据库安装的位置,数据库名等 *.ctrl
4)配置文件:记录的是数据库的重要参数,如数据库的大小,内存结构 *.ora
8.继续命令:
查看数据库的名字和实例名:
Select * from 表名(系统表v d a t a b a s e ) S e l e c t i n s t a n c e n a m e f r o m v database) Select instance_name from v databaseSelectinstancenamefromvinstance 实例名
用新账户登陆:
conn 用户名/密码
新用户登录被拒绝,没有权限

给新用户授权:
grant create session(会话) to 用户名;
建表授权:
grant create table to 用户名;
9.表空间
是一个逻辑的概念,里面包括所有的要创建的数据库的对象。如表,用户等。
表空间的划分: 数据块 数据区
表空间的含义:在操作中,我们新建的任何数据都是放在表空间上的。
Oracle中默认的表空间:system,users.
可以把自己新建的数据库对象,如表,视图等全部放入自己建立的表空间上,这样归类清楚,查询效率很高。
10.如何建立表空间:
语法:create tablespace 名字
datafile(表空间的位置) size(大小) autoextend 是否自动扩展
删除表空间
drop tablespace tb11 including contents and datafiles
列出当前用户的表空间:
select * from user_tablespaces
列出指定用户的表空间:

查看用户的默认表空间:
select username,default_tablespace from
dba_users
where username=”大写用户”;
查看你用户拥有的权限:
select * from
user_sys_privs
给用户赋予权限,有一个原则,不用直接给用户授权,先把要给的权限放入角色,然后把角色赋予用户即可。
新建用户,然后登录,并建表
1)connect角色:允许用户连接数据库
2)resource角色:允许用户创建数据库对象
3)dba角色:允许用户创建,删除,修改对象
删除用户:
drop user 用户名 cascade;
考察:查看有哪些用户:select * from dba_users
查看用户拥有的权限:select * from uer_sys_privs
查看用户拥有的角色:select * from user_role_privs
权限的分类:
1)系统权限:
包括:create alter drop
2)对象权限:CRUD 增删改查 select/insert/delete/update
赋予对象权限,让其他用户能够访问:grant select on 用户名.表名 to 本用户名
收回权限:revoke select on 用户名.表名 to本用户名
11.远程连接:
sqlplus 用户名/密码@ip/SID
12.如何创建新的数据库
dbca
13.如果管理员给用户一个查看table1的权限,那么这个用户可以把这个权限给其他用户:
grant select on system.表名 to 用户名 with grant(对象权限)/admin(系统权限) option.
14.查看授权者,被授权者:
select grantee,grantor,table_name from user_tab_privs_made;

15.数据类型:
1)字符类型:
char(字符固定长度)
varchar(可变长度2000)
nchar unicode编码
nvarchar
varchar2 4000
nvarchar2

2)数值类型:
int:整形
numeric(p,s) 精度
decimal(p,s)
number(p,s)
3)日期类型:
date(精准到秒)
timestamp(毫秒)
4)大对象:
二进制: raw 最大2G
lob: blob :二进制 4G
clob :字符
5)布尔:boolean
16.ddl和dml
Ddl:数据定义语言:create alter drop
Dml:数据操作语言:crud
二、高级操作
1.创建数据库对象:
Create table 表名
(
Id int,
sst1_name nvarchar2(40),
Sst1_age int
)
2.查看表结构
Des 表名
3.对表进行crud
1)添加数据:insert into 表名(字段)values(相应字段赋值);
2)查看数据:select * from 表名
3)删除数据:delete from 表名
4)更新数据:update 表名
Set 字段名=修改值
Where 条件
4.添加一个字段:
create table stu_3
(
Stu_id int,
Stu_name varchar2(20)
);

alter table stu_3 add stu_age int;

检查字段:desc stu_3(表名)
5. 修改字段:
age的类型修改为varchar
alter table 表名 modify 字段 varchar2(20)
6.删除字段:
alter table stu_3 drop column stu_age;
7.给表添加备注信息:
语法:comment on table 表名 is 备注信息
comment on table stu_3 is ‘学生表3’;
8.如何查看用户表的备注信息:
select * from user_tab_comments where table_name=’表名’;
9.给字段添加备注信息:
comment on column 表名.字段名 is ‘姓名’;
10. 查看字段备注:
select * from user_col_comments where table_name=’表名’;
11.给学生添加成绩字段,求出平均分
1)添加成绩:
alter table stu_3 add stu_score int;
2)添加成绩数据:
insert into stu_3(stu_id,stu_name,stu_score) values(1,’zhangsan’,88);
insert into stu_3(stu_id,stu_name,stu_score) values(2,’zhangsan’,66);
3)显示平均分:
添加平均分字段,在添加的同时,进行表达式计算,添加完毕后,数据显示。
alter table stu_3 add score_avg as (stu_score/2);
select * from stu_3
12.添加默认值:
为学生表添加入学时间,给这个字段添加一个默认值

添加入学时间:alter table stu_3 add recruit_time date;
添加默认值:alter table stu_3 modify recruit_time default sysdate; (当前系

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值