Oracle 笔记(一)
Oracle基本理论
l 主流数据库
微软公司:SQL Server ACCESS
IBM公司:DB2 infomix
Oracle公司:Oracle MySQL(AB公司)
|
小型数据库 ACCESS FoxBase 开发人数:100人 访问量:10人/秒 开发成本:1000元 |
中型数据库 SQL Server My SQL Infomix 开发人数:1000人 访问量:500人/秒 开发成本:10000元 |
大型数据库 Oracle DB2 开发人数:3.6万 访问量:海量 开发成本:无上限 |
l 数据库发展史
层次型数据库网络型数据库
关系型数据库:
1970年 IBM公司研究员E.F.Codd博士奠定了关系型数据库的理论基础
1978年Oracle公司CEO 拉里.艾利森开发了第一个商用大型关系型数据库 Oracle
1983年 IBM公司推出DB2
l Oracle版本
|
Oracle9i(internet互联网)-Oracle10g(grid网格化)-Oracle11g-Oracle12c(Cloud云) |
l Oracle平台工具
|
SQL Plus PLSQL developer |
l Oracle服务 services.msc
|
OracleXXXXXXTNSListener—第三方工具监听服务:1521 |
|
OracleServiceXXXX-核心服务(物理运行结构-SGA XXXX实例数据库) |
l Oracle账户
n 系统账户
u sys 角色:sysdba 主人可以create database
u system 角色:sysoper大管家不可以create database
u scott角色:normal 实例用户大管家给他什么权限,他就有什么权限
切换一个账户:
|
Conn scott/123456 Conn 用户名/密码 |
查看SCOTT用户下表的数据字典:
|
Desc emp; Desc 表名 |
查看SCOTT用户下的表内容:
|
Select * from emp; Select * from 表名 |
l 自定义账户 conn system/123456;
|
创建账户 |
--创建一个用户 createuser rose identified by123456 |
|
修改账户 |
--修改一个用户的密码 alter user rose identified by 123456; --解锁一个用户 alter user rose account unlock; --修改用户向表空间插入数据的限制 alteruser rose quota 1m on users |
|
账户授权 |
--授予链接数据库的权限 grant create session to rose; grant createtableto rose; grant create session ,createtableto rose |
|
删除账户 |
drop user rose; ORA-01940: 无法删除当前连接的用户 select username,sid,serial# from v$session; alter system kill session '8,836'; ORA-01922: 必须指定 CASCADE 以删除 'ROSE' drop user rose cascade; |
|
创建表 |
????? |
l 权限
n 系统权限select * from system_privilege_map;
语法:
授权:grant 系统权限|角色|ALL to 用户
撤销权限:revoke系统权限|角色|ALLfrom用户
n 对象权限select * from table_privilege_map;
语法:
授权:grant 对象权限|ALL on 对象 to 用户
撤销权限:revoke对象权限|ALL on 对象 from 用户
案例一:学生管理系统student(stuno
integer, stuname varchar2(10),stuBir date,stuSex char(3) );
步骤一:创建一个表空间
|
l --创建一个表空间 create tablespace demoschool datafile size 5m autoextend |
步骤二:创建一个实例账户,管理表空间
|
create user lily identified alteruser lily identified by123456default |
步骤三:授予实例账户系统权限
骤四:登录这个账户
步骤五:建立student表
步骤六:表中插入2条数据
步骤七:查询学生名字
步骤八:修改学生信息
步骤九:删除学生
步骤十:把表删除
执行物理路径中的sql脚本
|
@ Start D:/school.sql |
删除表空间
|
drop tablespace demoschool; --连硬盘中的物理文件一起删除 drop tablespace demoschool including contents and datafiles; |
Oracle数据库的主要数据类型
一字符串类型
Char 固定长度字符CHAR字段最多可以存储2,000字节的信息。
VARCHAR2类型可变长度类型VARCHAR2最多可以存储4,000字节的信息。
二. 数字类型
NUMBER(P,S)是最常见的数字类型,可以存放数据范围为10^130~10^126(不包含此值),需要1~22字节(BYTE)不等的存储空间。
P 是Precison的英文缩写,即精度缩写,表示有效数字的位数,最多不能超过38个有效数字
S是Scale的英文缩写,可以使用的范围为-84~127。Scale为正数时,表示从小数点到最低有效数字的位数,它为负数时,表示从最大有效数字到小数点的位数
INTEGER类型INTEGER是NUMBER的子类型,它等同于NUMBER(38,0),用来存储整数。若插入、更新的数值有小数,则会被四舍五入。
FLOAT类型FLOAT类型也是NUMBER的子类型。
Float(n),数 n 指示位的精度,可以存储的值的数目。N 值的范围可以从 1 到 126。若要从二进制转换为十进制的精度,请将 n 乘以 0.30103。要从十进制转换为二进制的精度,请用 3.32193 乘小数精度。126 位二进制精度的最大值是大约相当于 38 位小数精度。
三. 日期类型
DATE是最常用的数据类型,日期数据类型存储日期和时间信息。虽然可以用字符或数字类型表示日期和时间信息,但是日期数据类型具有特殊关联的属性。为每个日期值,Oracle
存储以下信息:世纪、年、月、日期、小时、分钟和秒。一般占用7个字节的存储空间。
TIMESTAMP类型
这是一个7字节或12字节的定宽日期/时间数据类型。它与DATE数据类型不同,因为TIMESTAMP可以包含小数秒,带小数秒的TIMESTAMP在小数点右边最多可以保留9位
四. LOB类型
CLOB 数据类型
它存储单字节和多字节字符数据。支持固定宽度和可变宽度的字符集。CLOB对象可以存储最多 (4 gigabytes-1) * (database
block size) 大小的字符
BLOB 数据类型
它存储非结构化的二进制数据大对象,它可以被认为是没有字符集语义的比特流,一般是图像、声音、视频等文件。BLOB对象最多存储(4 gigabytes-1) * (database block
size)的二进制数据。
五. RAW & LONG RAW类型
LONG类型它存储变长字符串,最多达2G的字符数据(2GB是指2千兆字节,而不是2千兆字符),与VARCHAR2
或CHAR 类型一样,存储在LONG 类型中的文本要进行字符集转换。
2017-10-31 18:30:59
Oracle 笔记(一)的更多相关文章
- Oracle笔记 目录索引
Oracle笔记 一.oracle的安装.sqlplus的使用 Oracle笔记 二.常用dba命令行 Oracle笔记 三.function .select Oracle笔记 四.增删改.事务 Or ...
- Oracle笔记(1) 简单查询、限定查询、数据的排序
Oracle笔记(四) 简单查询.限定查询.数据的排序 一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及 ...
- 韩顺平Oracle笔记
韩顺平Oracle笔记 分类: DataBase2011-09-07 10:24 3009人阅读 评论(0) 收藏 举报 oracle数据库sqljdbcsystemstring 目录(?)[-] ...
- Oracle笔记 多表查询
Oracle笔记 多表查询 本次预计讲解的知识点 1. 多表查询的操作.限制.笛卡尔积的问题: 2. 统计函数及分组统计的操作: 3. 子查询的操作,并且结合限定查询.数据排序.多表查询.统计查 ...
- 转:oracle笔记
oracle笔记1 卸载oracle developer server的方法: 1-1 oracle卸载工具中卸载对应的oracleds项目:在注册表中搜索ORACLEDS HOME对应的别名,删除对 ...
- Oracle笔记(六) 多表查询
最近看了李兴华的oracle视频,这是网上别人做的笔记非常细致,分享给大家,第六篇 原创地址:http://www.cnblogs.com/mchina/archive/2012/09/07/2651 ...
- Oracle笔记二
一.数据库语言分类 二.DML之数据插入 把一个表中的数据查询出来插入另外一个表中. create table student(id number,name varchar2(20),age num ...
- oracle笔记一
一.Oracle简介 1.Oracle属于关系型数据库,是一款可以在Client/Server模式下运行的RDBMS产品.2009年,Oracle公司收购SUN. 2.Oracle是对象关系型数据库管 ...
- oracle笔记
一.sql*plus常用命令 (1)connect 用法:conn 用户名/密码@网络服务名[as sysdba/sysoper] 当特权用户连接时,必须带上as sysdba或是as sysoper ...
- Oracle笔记3-高级查询
高级查询 1.关联查询 作用:可以跨多表查询 --查询出员工的名字和他所在部门的名字 //错误//select first_name,name from s_emp,s_dept; //错误原因:产生 ...
随机推荐
- dedecms织梦网站本地迁移到服务器后,后台更新栏目文档提示模板文件不存在,无法解析文档!的解决办法
解决办法: 1.系统设置-系统基本参数-站点设置-网页主页链接,替换为空 2.系统设置-系统基本参数-核心设置-DedeCMS安装目录,替换为空
- C++ 编码导致编译错误
记录一个问题 平时经常用Notepad++写C++,然后g++编译 最近出现一个莫名其妙的问题 原来是编译时遇到了非法字符 用Notepad++一看,原来文件的编码出现的变化 不是UTF-8或者其他对 ...
- P1081 [NOIP2012]开车旅行[倍增]
P1081 开车旅行 题面较为啰嗦.大概概括:一个数列,只能从一个点向后走,两种方案:A.走到和自己差的绝对值次小的点B.走到和自己差的绝对值最小点:花费为此差绝对值:若干询问从规定点向后最多花 ...
- Kendo UI for jQuery使用教程:使用MVVM初始化(一)
[Kendo UI for jQuery最新试用版下载] Kendo UI目前最新提供Kendo UI for jQuery.Kendo UI for Angular.Kendo UI Support ...
- sed基础语法
sed 太强大了 参考博客如下:https://www.cnblogs.com/ctaixw/p/5860221.html sed: Stream Editor文本流编辑,sed是一个“非交互式的”面 ...
- 30 最小n个数
public class test30{ public static void main(String args[]){ int array[]={3,2,5,1,4}; int temp[] = f ...
- GitLab项目管理实践
群组 / 项目 群组和项目的关系我们可以简单的理解成文件夹和文件的关系.一个群组可以包含一个或多个项目. 使用群组,可以将相关的项目组合在一起,并允许成员同时访问多个项目. 群组也可以嵌套在子组中,建 ...
- Java——静态代理、动态代理
https://blog.csdn.net/giserstone/article/details/17199755 代理的作用:业务类只需要关注业务逻辑本身,保证了业务类的重用性 一 静态代理 特点: ...
- testNG之测试报告
原文:https://www.cnblogs.com/yuan-yuan/p/4503524.html 测试报告 执行完测试用例之后,会在项目的test-output(默认目录)下生成测试报告 打开i ...
- JavaScript 语法——字面量,变量,操作符,语句,关键字,注释,函数,字符集
JavaScript 是一个程序语言. 语法规则定义了语言结构. 它是一个轻量级,但功能强大的编程语言. ㈠JavaScript 字面量 在编程语言中,一般固定值称为字面量,如 3.14. ⑴数字 ...