oracle 学习笔记(第一天)

一直都没有系统的去学习oracle,现在有时间就开始看oracle的资料并且整理出来,有时间会继续更新下去

 

 

oracle 入门

 

1.oracle 数据库的主要特点
  支持多用户,大事务量的事务处理
  数据安全性,完整性控制
  支持分布式数据处理
  可移植性
 


2.oracle服务器是由oracle数据库和oracle实例组成的
 oracle数据库是一个数据的集合,该集合被视为一个逻辑单元
 管理数据库后台进程和内存结构的集合称为oracle实例
 oracle实例负责分配系统全局区和启动后台进程
 oracle数据库包括物理结构(包含数据库中的一组操作系统文件)和逻辑结构(数据库创建之后形成的逻辑概念之间的关系)
 


3.会话
 会话是用户与oracle服务器的单个连接
 当用户与oracle服务器建立连接时创建会话
 当用户与oracle服务器断开连接时关闭会话
 


4.oracle的内存结构包含 系统全局区(SGA)和程序全局区(PGA)
 oracle实例启动时分配系统全局区
 服务器进程启动时分配程序全局区
 


5.系统全局区(SGA)的内存结构是(共享池,数据缓冲池,日志缓冲池)
 共享池是对sql,pl/sql 程序进行语法分析,编译、执行的内存区域
 共享池是由库缓存和数据字典缓存组成的
 共享池的大小直接影响数据库的性能
 数据缓冲去用户存存储葱磁盘数据文件中读入的数据,所用用户共享
 缓冲区的大小对数据库的读取速度有直接影响
 日志首先产生于日志缓冲区,当日志达到一定数量时,由后台进程将日志数据写入日志文件
 日志缓冲区对数据库的性能影响较小
 


6.程序全局区包含单个服务器进程所需的数据和控制信息
 PGA是在用户连接到数据库创建一个会话时自动分配的,保存每个与oracle用户连接的用户进程所需的信息
 PGA为非共享区,只能单个进程使用,当一个用户会话结束时,PGA 释放
 


7.oracle实例包含用户进程、服务器进程、后台进程
 用户进程是一个需要与oracle服务器进行交互的程序,当用户运行一个应用程准备向数据库发送请求的时候创建了用户进程
 服务器进程用于处理连接到该实例的用户进程的请求,当用户连接到oracle数据库实例创建会话的时候产生服务器进程
 后台进程是oracle数据库为了保持最佳系统性能和协调多个用户请求而设置的。oracle实例启动时即创建了一系列的后台进程
 


8.物理组件包括数据文件控制文件和日志文件
 数据文件用于存储数据库数据,如表,索引数据等
 控制文件时记录数据库物理结构的二进制文件
 记录对数据库的所有修改信息,用户故障恢复

 

 

9.oracle逻辑组件包括   数据库-表空间-段-区-数据块
 表空间是数据库中最大的逻辑单位,一个oracle数据库至少包括一个表空间,就是system的系统表空间
 每个表空间是由一个或多个数据文件组成的,一个数据文件只能与一个表空间关联
 表空间的大小等于构成该表空间的数据文件的大小之和
 创建表空间的语法是 
 create tablespace tablespacename
 DATAFILE ‘filename’ [size integer[]k|m]
 [autoextend [off|on]];
 【段】
 段是构成表空间的逻辑存储结构,段由一组区组成。
 按照段所存储数据的特征,将段分为四种类型,即数据段、索引段、回退段和临时段
 【区】
 区为段分配空间,它由连续的数据块组成。
 当段中的所有空间已完全使用时,系统自动为该段分配一个新区。
 区不能跨数据文件存在,只能存在于一个数据文件中。
 【数据块】
 数据块是Oracle服务器所能分配、读取或写入的最小存储单元。
 Oracle服务器以数据块为单位管理数据文件的存储空间
 【模式】
 模式是对用户所创建的数据库对象的总称。
 模式对象包括表、视图、索引、同义词、序列、过程和程序包等。

 

 

10.oracle默认用户(SYS,SYSTEM,SCOTT)
 sys,oracle中所有的数据字典表和视图都存储在sys模式下,sys用户主要是用来维护系统信息和管理实例
 system是默认的系统管理员,该用户拥有oracle管理工具使用的内部表和视图,通常使用system用户管理数据库用户,权限个存储等
 scott是oracle的一个示范用户在oracle安装时创建

 

 

11.创建新的用户账号
 每个用户都有一个默认表空间和临时表空间
 语法:create user username 
 identified by password
 [default tablespace tablespace]
 [tempproary tablespace tablespace]
 


12.权限指的是执行特定命令和访问数据库对象的权利
 权限有两种(系统权限和对象权限)
 系统权限允许用户执行某些数据库操作,如创建表
 对象权限允许用户对数据库对象(表,视图,序列等)执行特定的操作
 角色是一组相关的权限的组合,可以将权限授予角色,再将角色授予用户
 


13.grant 用于为用户分配权限和角色
 grant connect to user;connect角色允许用户连接至数据库并且创建数据库对象
 grant resource to user;resourse角色允许用户市局库中的存储空间
 grant create sequence to user;语序用户在当前模式中创建序列,此权限包含在connect角色中
 grant select on test to user;允许用户user查询表test
 grant all on test to user;允许用户user查删增修表test
 


14.更改和删除用户
 alter user username identified by ‘password’  修改用户username的密码为oassword
 drop user username cascade 删除username用户模式
  
 

oracle相关时间计算,得到季度第一天、最后一天 ------------------------------------------------ Oracle 日期-------------------------------------------- 本季度第一天SELECT to_char(TRUNC(SYSDATE, ' 阅读详情

相关推荐

Oracle学习笔记(传智播客 赵强)

资料为2013 10份上课学习整理,对于初学者比较有用

Oracle学习笔记整理手册

PS:本博客收录自己工作中遇到学到的一些Oracle技能,有时间就更新整理一下 (1)Oracle正则匹配使用 PS:这条SQL可以通过正则匹对查询一下,表A的字段a是否有非数字的数据,有时候数据表的一些字段是varchar类型的,如果sql里用to_number的话,就肯定会报无效数字的错误 select * from 表A where not regexp_like(字段a,'^[[:d...

Nicky's blog 1万+

STM32F103新手必看:0.96寸OLED屏幕从接线到动态显示全攻略(附IIC避坑指南)

本文为STM32F103新手提供了0.96寸OLED屏幕从硬件接线到软件驱动的完整实战指南。重点解析了IIC通信的时序、设备地址(0x78/0x7A)的常见陷阱,并详细演示了如何实现字符显示与平滑滚动显示等动态效果,帮助开发者快速上手并避开常见调试难题。

stone的博客 556

oracle 权限管理入门

1.启动监听:lsnrctl start2.启动oracle实例:oradim -startup -sid orcl(oracle实例名)3.用户登录到oracle数据库:sqlplus username/password 4.dba(默认是sys)登录到数据库:sqlplus username/password as sysdba  ,默认的dba账号和密码可以是 sqlplus / as sy...

Busing的专栏 212

华为P812E光猫补全shell配置PON口模式

终于看到华为企业级的带2.5电口P812E横空出世了,相信很多发烧友也已经将此收入昂中。相信体验的同时,遇到的第一件事情就是配置PON口模式的问题,本文将带发烧基友解锁模式。

GUAIYU的博客 5740

告别黑窗口!用VSCode+Native Debug调试C/C++程序,比GDB命令行舒服多了

本文介绍了如何使用VSCode配合Native Debug扩展来调试C/C++程序,替代传统的GDB命令行方式。通过可视化调试环境,开发者可以更高效地管理断点、查看变量和调用栈,大幅提升调试效率。文章详细讲解了环境配置、核心调试功能及高级技巧,帮助开发者快速上手这一现代调试工具。

weixin_26833139的博客 251

oracle学习笔记第一天

oracle学习笔记第一天 --oracle学习的第一天 --一、几个基础的关键字 1、select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条语句的最后执行 select * from emp; 相关:1)列可起别名,有三种方式:<1>直接列名后下个单词; select job j from emp; &lt...

weixin_30568715的博客 138

ZYNQ平台上基于SGMII接口的IEEE1588/PTP协议高效实现方案

本文深入探讨了在Xilinx ZYNQ平台上,利用SGMII接口实现高精度IEEE1588/PTP协议的方案。通过将硬件时间戳单元集成在PL端的AXI以太网子系统IP核中,该方案绕过了软件协议栈和外部PHY的延迟,实现了亚微秒级的时间同步精度。文章详细解析了硬件设计、Vivado IP配置、Linux驱动移植及PTP协议栈部署等关键步骤,为工业控制、通信等领域的高精度网络同步提供了高效、灵活的解决路径。

q5r6s7的博客 606

Oracle学习笔记——第一天

oracle学习打开oracle学习笔记——第一天一.软件安装二.软件介绍1.现有文本文件存放数据缺陷2. 数据库: 是一个数据存储管理的软件,全称rdbms(关系数据库管理系统),简称数据库(db)3. 常见基本概念4. oracle工作方式5. 命令区别三.Sql命令 --- 查询命令四.排序 – order by五.条件查询(where) --- 逐行筛选1.等值条件判断 = !...

破风少年 839

从电商平台到微信私域:构建合规跳转链路的技术实现

在互联网营销与用户增长领域,链接跳转是连接不同平台、引导用户流量的基础技术。其核心原理是通过服务器端路由与参数解析,实现用户请求的接收、处理与重定向。这项技术的价值在于能够突破平台间的生态壁垒,实现流量的合规、可控迁移,尤其适用于跨平台营销、私域沉淀等场景。在实际应用中,常需处理微信环境限制、参数传递与动态内容生成等挑战。本文聚焦于电商平台(如淘宝)到微信生态的跳转需求,详细阐述了如何利用Node.js、Express框架及二维码生成技术,构建一个包含环境检测、参数传递与动态落地页的完整跳转系统,以解决微信

weixin_33889665的博客 324

手把手教你用ObjectCRX进行Caxa二次开发:从零开始的环境搭建教程

本文是一份面向零基础初学者的Caxa二次开发实战指南,重点讲解如何使用ObjectCRX框架从零开始搭建开发环境。内容涵盖Visual Studio 2015版本锁定、ObjectCRX向导集成、项目创建、典型错误解决,并最终实现一个可在Caxa中运行的HelloWorld程序,帮助开发者快速入门并避开常见陷阱。

w3x4y的博客 513

Oracle学习笔记第一天

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34128839的博客 125

基于阿里云物联网平台设计的实时图传系统_采用MQTT协议传输图像

当前基于MQTT协议设计了一个实时图传系统,通过这个项目来演示,两个MQTT设备如何互相订阅,进行消息流转。 在阿里云服务器上创建2个设备,分为为设备A和设备B;设备A负责采集本地摄像头画面上传,设备B负责接收设备A上传的数据然后解析显示出来。在阿里云服务器上需要配置云产品流转,让设备A的数据上传后自动发送给设备B。这样就完成了视频画面数据的流转。不过因为阿里云的最大数据限制,每次最大发送10240字节的数据。

1万+

oracle第一天学习笔记

1 查询的时候,将两个字段拼加,使用 || 符号 例如,oracle自带的实例表 emp 中,将ename和sal查询的结果拼加就这么写 [code="sql"] select ename||sal from emp; [/code] 这样就会把 sal (NUMBER) 类型转换成字符类型和 ename 相加然后显示出来。 2 如何在字符串中引用 ' ? 用两个',像这样 ...

daxiong921 139

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

安装oracle内存溢出2%,Oracle学习笔记第一天

该练习都是oracle自带的表数据,emp,dept等。一、优化原则1.查询语句尽量指定列名,避免使用*;2. WHERE 条件从右到左3.尽量使用WHERE,少使用HAVING4.多表查询优于子查询。5.尽量不要使用集合运算二、IN可以使用NULL,NOT IN 不可以使用NULL在ORACLE中,IN是或逻辑(=1 OR =2 OR =NULL),NOT IN 是与逻辑(=1 AND =2 A...

weixin_35395562的博客 189

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

oracle 学习笔记(第一天 下午)

1.sql 支持以下类别的命令 数据库定义语言(DDL)(create,alter,truncate,drop) 数据库操作语言(DML)(insert,select,delete,update) 事务控制语言  (TCL)(commit,savepoint,rollback)  事务是最小的工作单元,做为一个整体进行工作  保证事务的整体成功或失败,称为事务控制  用于事务控制的语句有(comm...

Busing的专栏 223

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Oracle 周的第一天

因用户需求,需计算出每周的每一天  找到如下资料 (引用网址 : http://www.zhiweinet.com/jiaocheng/2009-04/7009.htm)   ——日期计算,算第n周的第一天及最后一天是几号。     ================================================     —— ww的算法为每年1月1日为第一周开始,date...

xhfbx的博客 2597

oracle 每季度第一天,oracle获得每周,每月,每季度,每年的第一天

当前年月日SELECT trunc(sysdate) , trunc(sysdate,'dd')FROM dual当年第一天SELECT trunc(sysdate,'yyyy')FROM dual当月第一天SELECT trunc(sysdate,'mm')FROM dual当周第一天SELECT trunc(sysdate,'d')FROM dual当前季度第一天,下一季度第一天SELECT ...

weixin_34676828的博客 3366

oracle当月一天_SQL和Oracle获取每周、每月、每年第一天和最后一天

SQL部分①本周的星期一这里我是用周(wk)的时间间隔来计算哪一天是本周的星期一。SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)②一年的第一天现在用年(yy)的时间间隔来显示这一年的第一天。SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)③季度的第一天假如你要计算这个季度的第一天,这个例子告诉你该如何做。...

weixin_34384824的博客 1284

SQL和Oracle获取每周、每月、每年第一天和最后一天

SQL部分 ①本周的星期一 这里我是用周(wk)的时间间隔来计算哪一天是本周的星期一。 SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)②一年的第一天 现在用年(yy)的时间间隔来显示这一年的第一天。 SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()),...

weixin_34410662的博客 8894

oracle里每年第一天,SQL和Oracle获取每周、每月、每年第一天和最后一天

SQL部分①本周的星期一这里我是用周(wk)的时间间隔来计算哪一天是本周的星期一。SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)②一年的第一天现在用年(yy)的时间间隔来显示这一年的第一天。SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)③季度的第一天假如你要计算这个季度的第一天,这个例子告诉你该如何做。...

weixin_31613423的博客 2572

Oracle获取上个月的第一天、今年第一天

select trunc(ADD_MONTHS(last_day(sysdate),-2) +1) from dual 2020/6/1

菜鸟逆袭之路 4454

oracle获取年、月、季度第一天

--oracle 获取年、月、季度第一天 --获取昨天 select trunc(SYSDATE-1) from dual; --2015/8/19 select to_char(trunc(SYSDATE-1),'yyyy-mm-dd HH24:MI:SS') from dual; --2015-08-19 00:00:00 --获取本月第一天 select trun...

wjxbj的博客 601

oracle中一个月的最后一天,SQL和Oracle获取每周、每月、每年第一天和最后一天

SQL部分①本周的星期一这里我是用周(wk)的时间间隔来计算哪一天是本周的星期一。SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)②一年的第一天现在用年(yy)的时间间隔来显示这一年的第一天。SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)③季度的第一天假如你要计算这个季度的第一天,这个例子告诉你该如何做。...

weixin_34345947的博客 2608

oracle 获取指定日期的第一天和最后一天和上个月的第一天和最后一天及当年第一天和当年最后一天

1.查询本月的第一天 --方式一 SELECT TO_CHAR(SYSDATE,'YYYY-MM') || '-01' "本月第一天" FROM DUAL; --方式二 SELECT TO_CHAR(TRUNC(SYSDATE,'MM'),'YYYY-MM-DD') "本月第一天" FROM DUAL; 2.查询本月的最后一天 SELECT TO_CHAR(LAST_DAY...

此人很懒,什么也没有留下~ 5105
上一篇: jdom 修改xml文件 保存
下一篇: oracle 学习笔记(第一天 下午)
Busing
博客等级 码龄18年 8粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值