Oracle基础——学习笔记
一【用户】sys\system\sysman\scott
1、查看数据库所有用户(dba_users数据字典):
select username from dba_users;
2、查看当前用户:
show user;
3、启用(解锁)数据库用户:
alter user username account unlock;
二【表空间】
数据库与表空间的关系:一个数据库可以有一个或多个表空间;
表空间与数据文件的关系:一个表空间对应一个数据文件;
永久表空间:主要用于存放表、视图、存储过程;
临时表空间:主要用于存放一些数据库操作当中中间执行的过程,当执行完成之后存放的内容会自动被释放掉,不进行永久性保存;
UNDO表空间:主要用于保存事务所修改数据的旧值,也就是说被修改之前的数据;
1、查看用户的表空间(dba_tablespaces和user_tablespaces、dba_users和user_users数据字典):
select tablespace_name from dba_tablespaces;
select tablespace_name from user_tablespaces;
select username,default_tablespace,temporary_tablespace from dba_users;
select username,default_tablespace,temporary_tablespace from user_users;
2、设置用户的默认或临时表空间:
alter user username defalut|temporary tablespace tablespace_name;
3、创建表空间:
create [temporary] tablespace tablespace_name tempfile|datafile 'xx.dbf' size xx;
4、查看表空间对应数据文件的路径(dba_data_files和dba_temp_files数据字典):
select tablespace_name,file_name from dba_data_files;
select tablespace_name,file_name from dba_temp_files;
5、修改表空间的状态:
(联机或脱机)
alter tablespace tablespace_name online|offline;
(只读或可读写)
alter tablespace tablespace_name read only|read write;
6、修改表空间的数据文件:
(增加数据文件)
alter tablespace tablespace_name add datafile 'xx.dbf' size xx;
(删除数据文件)
alter tablespace tablespace_name drop datafile 'xx.dbf';
7、删除表空间:
drop tablespace tablespace_name [including contents]--包括数据文件一并删除
三【认识表】
1、表——基本存储单位;二维结构;行和列;
约定:
1)、每一列数据必须具备相同的数据类型;
2)、类名唯一;
3)、每一行数据的唯一性;
2、数据类型——字符型、数值型、日期型、其他类型
字符型——char(n)[n最大值为2000]、nchar(n)[n最大值为1000]
——varchar2(n)、nvarchar2(n)
数值型——number(p,s)[p为有效数字,s为小数点后的位数]
——float(n)
日期型——date[表示范围:公元前4712年1月1号到公元9999年12月31号,可精确到秒]
——timestamp[可精确到毫秒]
其他类型——blob[可存放4GB的数据,以二进制形式来存放]
——clob[可存放4GB的数据,以字符串形式来存放]
1、创建表:
create table table_name(
column_name datatype,
……
);
2、修改表:
(添加字段)
alter table table_name add column_name datatype;
(更改字段数据类型)
alter table table_name modify column_name datatype;
(删除字段)
alter table table_name drop column column_name;
(修改字段名)
alter table table_name rename column old_column_name to new_column_name;
(修改表名)
rename table_name to new_table_name;
3、删除表:
truncate table tablename;--不删除表,只清空table_name表中的数据,速度快
drop table table_name;--删除表
四【操作数据】
1、插入数据:
insert into table_name (column1,column2,...) values(value1,value2,...);
2、给字段添加默认值:
create table table_name(column1 datatype default sysdate,column2 datatype,...);
alter table table_name modify column_name default sysdate;
3、复制数据:
create table table_name1 as select column1,column2,... from table_name2;
insert into table_name1 [(column1,...)] select column1,... from table_name2;
4、修改数据:
update table_name set column1=value1,... [where conditions];
5、删除数据:
delete from table_name [where conditions];
truncate table table_name;
五【约束】
作用:定义规则;确保完整性;
1、非空约束
1)、添加非空约束:
create table table_name(column_name datatype not null,...);
alter table table_name modify column_name datatype not null;
2)、删除非空约束:
alter table table_name modify column_name datatype null;
2、主键约束[一张表只能设计一个主键约束;主键约束可以由多个字段构成(联合主键或复合主键)]
1)、添加主键约束:
create table table_name (column_name datatype primary key,...);
create table table_name (column_name1 datatype,column_name2 datatype,...,
constraint constraint_name primary key(column_name1,column_name2,...));--创建联合主键
2)、修改表添加主键约束:
alter table table_name add constraint constarint_name primary key (column1,column2,...);
3)、重命名主键约束:
rename constraint old_constraint_name to new_constraint_name;
4)、启用|禁用主键约束:
alter table table_name disable|enable constraint constraint_name;
5)、删除主键约束:
alter table table_name drop constraint constraint_name;
alter table table_name drop primary key [CASCADE];
3、外键约束
1)、添加外键约束:
create table table1 (column_name datatype references table2(column_name),...);
[table2的column_name需为主键且主外键的数据类型必须相同,外键的值要么包含于主表主键的值,要么为null]
create table table1 (column_name datatype,...,
constraint constraint_name foreight key (column_name) references table2(column_name) [on delete CASCADE]);
2)、修改表添加外键约束:
alter table table1 add constraint contraint_name foreight key(column_name) references table2(column_name) [on delete CASCADE];
3)、启用|禁用外键约束:
alter table table_name disable|enable constraint constraint_name;
4)、删除外键约束
alter table table_name drop constraint constraint_name;
4、唯一约束
1)、添加唯一约束:
create table table_name (column_name datatype UNIQUE,...);
create table table_name (column_name datatype,...,
constraint constraint_name UNIQUE(column_name));
2)、修改表添加唯一约束:
alter table table_name add constraint constraint_name UNIQUE(column_name);
3)、启用|禁用唯一约束:
alter table table_name disable|enable constraint constraint_name;
4)、删除唯一约束
alter table table_name drop constraint constraint_name;
5、检查约束
1)、添加检查约束:
create table table_name (column_name datatype check(expressions),...);
create table table_name (column_name datatype,...,
constraint constraint_name check(expressions));
2)、修改表添加检查约束:
alter table table_name add constraint constraint_name check(expressions);
3)、启用|禁用检查约束:
alter table table_name disable|enable constraint constraint_name;
4)删除检查约束:
alter table table_name drop constraint constraint_name;
六【数据查询】
1、基本查询数据:
select [distinct] column_name1,... from table_name [where conditions];
2、在sqlplus中设置格式:
col column_name heading new_name;
col column_name format dataformat;
col column_name clear;--格式清除
Oracle基础——学习笔记的更多相关文章
- Oracle基础学习笔记
Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...
- Oracle 基础学习笔记
知识点 一.登陆数据库: 登陆数据库: sqlplus system/oracle123456 二.新建用户.授权(连接数据库.创建表.表空间.查询某用户下的表) 语法: create user [用 ...
- Oracle RAC学习笔记01-集群理论
Oracle RAC学习笔记01-集群理论 1.集群相关理论概述 2.Oracle Clusterware 3.Oracle RAC 原理 写在前面: 最近一直在看张晓明的大话Oracle RAC,真 ...
- 尚学堂JAVA基础学习笔记
目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...
- Oracle RAC学习笔记:基本概念及入门
Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章] oracle 10g real applica ...
- 【C#编程基础学习笔记】4---Convert类型转换
2013/7/24 技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...
- 【C#编程基础学习笔记】6---变量的命名
2013/7/24 技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...
- 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)
技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...
- Oracle RAC学习笔记02-RAC维护工具集
Oracle RAC学习笔记02-RAC维护工具集 RAC维护工具集 1.节点层 2.网络层 3.集群层 4.应用层 本文实验环境: 10.2.0.5 Clusterware + RAC 11.2.0 ...
随机推荐
- NodeJs+Request+Cheerio 采集数据
目的:采集网站文章. 两个依赖项: request :https://github.com/request/request cheerio:https://github.com/cheeriojs/c ...
- Hadoop的体系结构
HDFS和MapReduce是Hadoop的两大核心.而整个Hadoop的体系结构主要是通过HDFS来实现对分布式存储的底层支持的,并且它会通过MapReduce来实现对分布式并行任务处理的程序支持. ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(6)-Unity 依赖注入
系列目录 前言 为了符合后面更新后的重构系统,文章于2016-11-1日重写 本节重构一下代码,采用IOC控制反转,也就是依赖注入 您可以访问http://unity.codeplex.com/rel ...
- 在Linux Mint上安装node.js和npm
1.安装Node.js 前端开发过程中,很多项目使用npm的http-server的模块来运行一个静态的服务器,我个人在Dell的笔记本上安装的是Linux Mint最新版本,所以想尝试一下在Linu ...
- 计算机程序的思维逻辑 (50) - 剖析EnumMap
上节我们提到,如果需要一个Map的实现类,并且键的类型为枚举类型,可以使用HashMap,但应该使用一个专门的实现类EnumMap. 为什么要有一个专门的类呢?我们之前介绍过枚举的本质,主要是因为枚举 ...
- 数据库日常维护-CheckList_02有关数据库备份检查
数据库备份是DB日常运维中最基本的也是最重要的工作,很多情况下都是做成作业形式实现自动化周期性的做全备.差异以及日志备份.那么,如果作业出现问题没有完成工作,我们可以设置自动报警如email被动提醒我 ...
- Sql Server 内存相关计数器以及内存压力诊断
在数据库服务器中,内存是数据库对外提供服务最重要的资源之一, 不仅仅是Sql Server,包括其他数据库,比如Oracle,MySQL等,都是一类非常喜欢内存的应用. 在Sql Server服务器中 ...
- ASP.NET Core 中文文档 第四章 MVC(3.6.2 )自定义标签辅助类(Tag Helpers)
原文:Authoring Tag Helpers 作者:Rick Anderson 翻译:张海龙(jiechen) 校对:许登洋(Seay) 示例代码查看与下载 从 Tag Helper 讲起 本篇教 ...
- 使用Beautiful Soup编写一个爬虫 系列随笔汇总
这几篇博文只是为了记录学习Beautiful Soup的过程,不仅方便自己以后查看,也许能帮到同样在学习这个技术的朋友.通过学习Beautiful Soup基础知识 完成了一个简单的爬虫服务:从all ...
- CSS常见居中讨论
先来一个常见的案例,把一张图片和下方文字进行居中: 首先处理左右居中,考虑到img是一个行内元素,下方的文字内容也是行内元素,因此直接用text-align即可: <style> .con ...