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;

时间: 2024-08-28 18:12:05

Oracle基础——学习笔记的相关文章

[java基础学习笔记]Java8SE开发环境搭建、第一个Java Hello World、Java程序的编译与执行

本文作者:sushengmiyan 本文地址:http://blog.csdn.net/sushengmiyan/article/details/25745945 主要内容: ---------------------------------------------------| 1.JDK的下载与安装                            | 2.编写第一个java程序HelloWorld     | 3.编译执行HelloWorld                      

HTML&CSS基础学习笔记8-预格式文本

<pre>标签的主要作用是预格式化文本.被包围在 pre 标签中的文本通常会保留空格和换行符.而文本也会呈现为等宽字体. <pre>标签的一个常见应用就是用来表示计算机的源代码.当然你也可以在你需要在网页中预显示格式时使用它. 会使你的文本换行的标签(例如<h>.<p>)绝不能包含在 <pre> 所定义的块里.尽管有些浏览器会把段落结束标签解释为简单地换行,但是这种行为在所有浏览器上并不都是一样的. 更多学习内容,就在码芽网http://www.

HTML&CSS基础学习笔记13—无序列表

无序列表 有时我们的工作繁忙,杂事很多,怕忘记,就会把事情一件件列出来,防止忘记. 它们的排列顺序对于我们来说并不重要,可以随意调换,我们将它称为无序列表,HTML里用<ul>标签来表示无序列表,列表里的项目则用<li>标签来表示: 1 2 3 4 5 <ul>     <li></li>     <li></li>     ... </ul> 看一段实例代码: 对于的浏览器显示结果是这样的: 更多内容学习,请

ASP.Net MVC开发基础学习笔记(3):Razor视图引擎、控制器与路由机制学习

首页 头条 文章 频道                         设计频道 Web前端 Python开发 Java技术 Android应用 iOS应用 资源 小组 相亲 频道 首页 头条 文章 小组 相亲 资源 设计 前端 Python Java 安卓 iOS 登录 注册 首页 最新文章 经典回顾 开发 Web前端 Python Android iOS Java C/C++ PHP .NET Ruby Go 设计 UI设计 网页设计 交互设计 用户体验 设计教程 设计职场 极客 IT技术

Oracle Rac11g 学习笔记

查看集群节点状态 命令是olsnodes -i 显示每个节点的VIP, -n 显示每个节点在RAC集群中的编号 -p 显示每个节点所使用的私有IP地址 -s 显示每个节点的状态(activive或者inactive) 列车集群中所有资源 crs_stat -t 查看crs资源状态 crsctl check crs 查看ctss服务的状态 crsctl check ctss 查看集群中所有节点状态 crsctl check cluster -all 查看ASM实例进程 ps -ef | grep

JAVA基础学习笔记(2)

看了几天的视频了,都没时间来写下学习笔记,今天来写下第二次的学习笔记,前几天看的给忘记了,就写最新看到的吧 主要内容:1.类的变量与函数(方法) 2.对象的存储方式 3.新建一个对象及对象的赋值与调用 4.空对象 5.匿名对象 1.类的变量与函数(方法) class Dog      //类名 { String name;  //变量的声明 int age; String color; void bark()   //方法的定义(返回值为空,不带参数) { System.out.println(

oracle 触发器 学习笔记

触发器 是特定事件出现的时候,自动执行的代码块.类似于存储过程,但是用户不能直接调用他们. 功能: 1. 允许/限制对表的修改 2. 自动生成派生列,比如自增字段 3. 强制数据一致性 4. 提供审计和日志记录 5. 防止无效的事务处理 6. 启用复杂的业务逻辑 开始 create trigger biufer_employees_department_id before insert or update of department_id on employees referencing old

ASP.Net MVC开发基础学习笔记:三、Razor视图引擎、控制器与路由机制学习

一.天降神器“剃须刀” — Razor视图引擎 1.1 千呼万唤始出来的MVC3.0 在MVC3.0版本的时候,微软终于引入了第二种模板引擎:Razor.在这之前,我们一直在使用WebForm时代沿留下来的ASPX引擎或者第三方的NVelocity模板引擎. Razor在减少代码冗余.增强代码可读性和Visual Studio智能感知方面,都有着突出的优势.Razor一经推出就深受广大ASP.Net开发者的喜爱. 1.2 Razor的语法 (1)Razor文件类型:Razor支持两种文件类型,分

JAVA基础学习笔记(1)

今天第一天开始学JAVA,时间:2014年6月17日 学习内容:1.java环境的架设 2.JAVA基本数据类型 1.JAVA环境的架设       1.要先去下载JDK,下载地址 2.安装完成后,设置环境变量 1.1环境变量的设置        1.右键-我的电脑-属性-高级-环境变量-系统变量,找到PATH,在里面加入jdk里bin目录的地址 如:c:\java\bin; 2.新建-名为classpath,值为. 1.2测试JAVA是否配置正确        1.在cmd里面输入javac.