Oracle学习笔记(一)

体系结构

(1)数据库(动态):数据文件(.dbf)、控制文件(.ctl)、日志文件(.log)
(2)实例(静态):一组后台进程/线程 ; 分配共享内存

二者关系:

1)数据库可由多个实例装载和打开

2)实例可以在任何世家你装载和打开一个数据库

3)一个实例在其生存期间最多只能装载和打开一个数据库

管理Oracle

数据字典

定义:保存关于数据库本身及所有对象的基本信息,由基础表和视图构成    只读,不可改!

静态视图    不随环境改变而改变

动态视图   V$开头

user_     当前用户所拥有的对象信息

all_        当前用户能够访问的+自己所拥有的对象信息

dba_     数据库中所有的对象信息(整个数据库)

查看当前用户的角色:

select * from user_role_privs;

查看当前用户下所有表:

select * from user_tables;

查看当前用户的用户名:

select username from user_users;

当前用户有权限访问的所有对象信息:

select object_name,object_type from all_objects;

实例有多少用户:

select username from dba_users;

显示全局存储区SGA信息:

select name,value from V$sga;

数据库的启动和关闭

启动步骤:1.创实例——2.加载数据库——3.打开     (1.2步完成后就可以读写)

关闭步骤:关闭数据库——卸载——关实例

启动模式

nomount    只做了步骤1即只创了实例,可读数据字典

mount        只做了步骤1.2 控制文件把相应信息加载

open          完成1.2.3步骤 正常运行(默认模式)

关闭模式

normal           正常关闭

immediate     立即关闭

transaction    事务关闭

abort             终止关闭

ps:在nomount模式下输入shutdown immediate 出现??? 是因为nomount模式只创实例,关闭步骤的前两步未产生,因此关闭会显示???

模式之间切换:相邻才可切换   只能由低到高切,逐级切       例alter database mount;

nomount——>mount——>open

SQL * Plus 命令

命令以回车作为结束,不以;结束    []为可选项  {}为默认值

解锁用户

1.解锁账号    alter user  用户名 account unlock;

2.设置密码    alter user 用户名 indentified by 密码;

以解锁scott用户为例

alter user scott account unlock;
alter user scott indentified by root;

scott用户默认有4个表:EMP/ DEPT/ BONUS/ SALARY/ GRADE

一、set 命令      环境、参数的设置

set linesize {80} #定义行的长度

set pagesize {14} #一页多少行

set newpage {1} #顶上留白(空几行)

#查看默认值

show linesize/pagesize/newpage..

二、describe 命令      描述表、视图结构

        des object_name

三、prompt 命令         类似printf 输出数据

@/run  运行(.sql)脚本文件(一次可以执行多条sql语句)

四、spool 命令            查询结果保存到文件/打印机中

spool file_name create/replace/append off;

file_name参数用于指定文件的名称,默认扩展名为.LST

create关键字表示创建一个新文件;

replace关键字表示替代已经存在的文件;

append表示把内容附加到一个已经存在的文件中;

五、COLUMN命令      控制列格式

format      指定列的显示格式

heading   定义列标题

justify       对齐方式(left、right、center)

清除格式(两种)

col 列名 off #只关闭不清除

clear  #只可重新设置

六、TTITLE和BTITLE命令      上下标题

七、缓存区命令

查看:list

存:save  (default:  .sql)

取:get

运行:/

编辑:edit

清除:clean buffer

SQL 语句基础

DDL    数据定义语言(create/alter/drop)

DCL    数据控制语言(grant/revoke)授权/收权

DML    数据操纵语言(select/insert/delete/update)针对数据不针对结构

用户与模式

用户(user): 用户是用来连接数据库和访问数据库对象的。

模式/方案(schema) :是用户所拥有的数据库对象的集合。

Oracle数据库中不能新创建一个schema,要想创建一个schema,只能通过创建一个用户的方法解决。

SQL内置函数

1.字符函数 length,ltrim,replace,rtrim,substr,trim……

ltrim(X[,trim_string]) : 删除字符串X左边的字符,如果使用了可选的trim_string参数,则删除指定串,否则删除空格。

第一个是*,不为‘h’/‘e’,只要遇到的不是指定字符就停止;

遇到*,‘h’ ,‘l’,‘e’就删除;

2.数学函数 abs,mod,power,sqrt,round ……

next_day(X,DAY) : 返回紧接着X的下一天,参数DAY是一个字符串。

3.时间和日期函数 sysdate,current_date,next_day ……

to_number(c[,fmt]) : 把某个表达式转变成数字。表达式的格式可以使用可选的格式描述。

4.转换函数 to_char,to_date,to_number ……

to_char(X[,format]) : 把指定的表达式转变成字符串。

5.统计函数 sum,avg,max,min,count ……

6.其他函数 user,decode,nvl ……

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值