`
anson_xu
  • 浏览: 514703 次
  • 性别: Icon_minigender_1
  • 来自: 惠州
社区版块
存档分类

Oracle 10g学习总结

阅读更多

Oracle 10g学习总结

1.登陆系统用户
sqlplus 然后输入系统用户名和密码
登陆别的用户
conn 用户名/密码;
2.创建表空间
create tablespace 空间名
datafile 'c:\空间名' size 15M  --表空间的存放路径,初始值为15M
autoExtend on next 10M  --空间的自动增长的值是10M
permanent online;  --永久使用
3.创建用户
create user shi   --创建用户名为shi
identified by scj  --创建密码为scj
default tablespace 表空间名 --默认表空间名
temporary tablespace temp --临时表空间为temp
profile default   --受profile文件的限制
quota unlimited on 表空间名; --在表空间下面建表不受限制
4.创建角色
create role 角色名 identified by 密码;
5.给角色授权
grant create session to 角色名;--给角色授予创建会话的权限
grant 角色名 to 用户名; --把角色授予用户
6.给用户授予权限
grant create session,resource to shi;--给shi用户授予所有权限
grant create table to shi; --给shi用户授予创建表的权限
7.select table_name from user_tables;   察看当前用户下的所有表
8.select tablespace_name from user_tablespaces; 察看当前用户下的 表空间
9.select username from dba_users;察看所有用户名称命令 必须用sys as sysdba登陆
Oracle 查看用户权限数据字典视图分为3大类, 用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息。

USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息

ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息

DBA_*:有关整个数据库中对象的信息

(这里的*可以为TABLES, INDEXES, OBJECTS, USERS等。

1.查看所有用户:
select * from dba_users;
select * from all_users;
select * from user_users;
2.查看用户系统权限:
select * from dba_sys_privs;
select * from all_sys_privs;
select * from user_sys_privs;
3.查看用户对象权限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
4.查看所有角色:
select * from dba_roles;
5.查看用户所拥有的角色:
select * from dba_role_privs;
select * from user_role_privs;

6.查看当前用户的缺省表空间
select username,default_tablespace from user_users;

7.查看某个角色的具体权限,如grant connect,resource,create session,create view to TEST;查看RESOURCE具有那些权限,用SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';
 

10.创建表
create table 表名
(
id int not null,
name varchar2(20) not null
)tablespace 表空间名  --所属的表空间
storage
(
   initial 64K   --表的初始值
   minextents 1   --最小扩展值
   maxextents unlimited  --最大扩展值
);
11.--为usrs表添加主键和索引
alter table users
add constraint pk primary key (ID);
12.为已经创建users表添加外键
alter table users
  add constraint fk_roleid foreign key (roleid)
  references role(role_id) on delete cascad; --下边写主表的列
   on delete cascad是创建级联
13.把两个列连接起来
select concat(name,id) from 表名;  --把name和id连接起来
14.截取字符串
select column(name,'李') from 表名;  --把name中的‘李’去掉
15.运行事务之前必须写
set serveroutput on;  --打开输入输出(不写的话,打印不出信息)
16.while的应用
declare   --声明部分
ccc number:=1;  --复职
a number:=0;
begin   --事务的开始
while ccc<=100 loop --循环
if((ccc mod 3)=0) then --条件
 dbms_output.put_line(ccc||',');    --打印显示
 a:=a+ccc;
end if;   --结束if
ccc:=ccc+1;
end loop;  --结束循环
dbms_output.put_line(a);
end;   --结束事务
/  
17.select into  的用法 --只能处理一行结果集
declare
  name varchar(30);
begin
 select username into name
 from users
 where id=2;
dbms_output.put_line('姓名为:'||name);
end;
/
18.利用%rowtype属性可以在运行时方便的声明记录变量和其他结构
Set serveroutput on;
Declare
   utype hr.employees%rowtype;
Begin
Select * into utype from hr.employees where employee_id=194;
Dbms_output.put_line('姓名'|| utype.first_name);
Dbms_output.put_line('生日'|| utype.last_name);
end;
/   --%rowtype想当于复制一个表
19.游标的定义和使用
Declare
Cursor ucur is select * from users; --声明游标
Us users%rowtype;--定义与游标想匹配的变量
Begin
Open ucur;--打开游标
Fetch ucur into us;
While ucur %found loop --使用循环遍历游标的查询结果
Dbms_output.put_line('姓名:'||us.username||'生日'||us.brithday);
Fetch ucur into us;
End loop;
Close ucur; --关闭游标
End;
=======================================
%found在前一条的fetch语句至少对应数据库的一行时,%found属性值为true,否则为false;
% notfound 在前一条fetch语句没有对应的数据库行时,%notfound属性值为true,否则为false;
%isopen 在游标打开时%isopen属性值为true;否则为false;
%rowcount显示迄今为止从显示游标中取出的行数

20.
删除
drop tablespace 空间名 including contents; --删除表空间和里面的内容
drop table 表名   --删除表
drop user 用户名  --删除用户

insert into student(stuid,stuname,age,birthday)values(stu_sn.nextval,'lisi',21,to_date('1989-09-08','yyyy-mm-dd'));
insert into student(stuid,stuname,age,birthday)values(stu_sn.nextval,'wangwu',21,to_date('1989-09-08','yyyy-mm-dd'));
insert into student(stuid,stuname,age,birthday)values(stu_sn.nextval,'zhaoliu',20,to_date('1990-09-08','yyyy-mm-dd'));
insert into exam(stuid,subid,grade)values(1,2,70);
insert into exam(stuid,subid,grade)values(2,1,45);
insert into exam(stuid,subid,grade)values(2,2,70);

 

 

 

oracle创建用户与授予所有权限

create user username identified by password default tablespace users quota unli
mited on users;

GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
   DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
      DBA,CONNECT,RESOURCE,CREATE SESSION  TO
用户名;

 

分享到:
评论

相关推荐

    2021年oracle10g学习总结.docx

    Oracle 10g 是一款广泛使用的数据库管理系统,其在2021年的学习总结主要涵盖了以下几个关键知识点: 1. **数据库备份与恢复**: - 使用`exp`命令进行数据库备份,通过CMD输入指定的参数,如:`exp userid=yz/yz@...

    Oracle11g学习笔记

    总结来说,"Oracle11g学习笔记"将引导你全面掌握Oracle11g数据库管理系统,从基础操作到高级应用,从数据库设计到性能优化,从安全管理到高可用性实践,为你的IT事业打下坚实基础。通过阅读这个PDF文档,你将能够...

    Linux下Oracle 10g安装

    在Linux环境下安装Oracle数据库10g是一项复杂但必要的任务,对于数据库管理员(DBA)和想要学习如何在Linux平台上安装和配置Oracle数据库的IT专业人员来说,这是一项基础技能。以下是在Linux上安装Oracle 10g的详细...

    Oracle 10g DBA 学习手册

    ### Oracle 10g DBA 学习手册关键知识点总结 #### 一、Oracle 10g DBA 学习手册概述 - **标题**:“Oracle 10g DBA 学习手册” - **描述**:这是一本面向初学者的指南,旨在帮助读者掌握Oracle 10g数据库的安装与...

    oracle10g 文档

    - **核心技能**:通过学习 Oracle Database 10g,学员将能够掌握安装、配置、管理数据库以及实施备份和恢复策略等关键技能。 - **实践操作**:课程中提供了大量的实践练习,帮助学员理解如何创建和管理数据库,包括...

    oracle11g学习心得

    以上是我在Oracle 11g学习过程中积累的主要知识点,每个点都值得深入研究和实践。随着对Oracle的不断探索,你会发现这个系统蕴含着无尽的深度和广度,既能满足日常操作需求,又能应对复杂的企业级挑战。

    Oracle 10g 安装(Windows下)

    总结来说,安装Oracle 10g在Windows环境下涉及多个环节,包括系统准备、安装过程、配置和安全管理。了解这些知识点对于成功安装和管理Oracle数据库至关重要。在实际操作中,应遵循最佳实践,并持续学习和适应Oracle...

    Oracle10g 知识总结

    Oracle10g是一款广泛使用的数据库管理系统,其强大的...以上只是Oracle10g的部分核心知识点,实际应用中还包括索引、视图、触发器、存储过程、游标等诸多内容,每个部分都有深度和广度,需要通过实践不断学习和掌握。

    欧拉系统安装oracle 11g

    欧拉系统安装 Oracle 11g 本资源摘要信息将详细介绍欧拉系统安装 Oracle 11g 的过程,包括安装依赖包、安装 Oracle 11g 等步骤。 安装依赖包 在安装 Oracle 11g 之前,需要安装一些依赖包,以确保安装过程的顺利...

    Oracle10g RAC集群技术.rar

    总结来说,Oracle 10g RAC集群技术是企业级数据库解决方案的重要组成部分,它通过集群技术实现了数据库的高可用性和高性能。理解和掌握RAC的原理和操作,对于任何大型企业或数据中心的数据库管理员来说,都是至关...

    oracle9i oracle11g oracle10g 性能调优 基础学习 视频地址

    - **Oracle10g**: 作为Oracle9i的后续版本,Oracle10g进一步增强了网格计算能力,提供了自动存储管理和资源管理等功能,提高了系统的可伸缩性和可用性。 - **Oracle11g**: Oracle11g在Oracle10g的基础上增加了更多的...

    ORACLE数据库学习总结资料.pdf

    Oracle数据库学习总结资料.pdf 是一份关于 Oracle 数据库的学习总结资料,涵盖了 Oracle 数据库的各个方面,包括 Oracle 的简介、简单查询、标量函数和算数运算、多表查询、列函数和分组、子查询、表的更新操作、表...

    Oracle 10g 课件

    本课件主要涵盖了Oracle 10g的核心概念和技术,适用于学习者了解和掌握数据库管理的基础知识。 首先,我们从"第01章 Oracle 10g体系结构.ppt"开始,这一章节会详细介绍Oracle 10g的整体架构,包括进程结构、内存...

    Oracle10g EM Console配置

    ### Oracle10g EM Console配置:解决中文乱码问题 #### 一、问题背景与原因分析 ...通过这些资源的学习,可以帮助更好地理解Oracle 10g EM控制台的工作原理和技术细节,从而提高在实际工作中的应用能力。

    win7中如何安装oracle10g和使用oracle10的说明文档

    - 学习如何使用Oracle 10g的RMAN工具进行数据库备份和恢复。 #### 使用psql工具操作Oracle数据库 尽管psql工具通常用于PostgreSQL数据库,但在某些情况下,您可能会遇到使用psql来操作Oracle数据库的需求。这通常...

    Oracle 11g Express 官方linux 64位版本

    总结来说,Oracle 11g Express Edition是Oracle公司在Linux 64位环境中提供的一款免费数据库解决方案,适合开发者和小团队进行学习和低流量应用的部署。通过理解其核心特性、安装流程和使用方法,用户可以充分利用这...

    Oracle10g upgrade guide

    ### Oracle 10g 升级指南核心知识点 #### 一、引言 在IT行业中,随着技术的发展和业务需求的变化,对数据库系统的更新换代是必不可少的过程。Oracle 10g作为一款重要的企业级数据库管理系统,其升级过程对于确保...

    Oracle10g for Solaris10

    总结来说,Oracle 10g for Solaris 10的部署和管理涉及到许多技术层面,从系统准备到日常运维,都需要扎实的IT基础和专业知识。通过不断学习和实践,可以充分利用这一组合的优势,提供高效、可靠的数据库服务。

    oracle 11g中文教材

    ### Oracle 11g中文教材知识点总结 #### 一、Oracle 11g概述与特点 - **Oracle Database 11g**:“g”代表**Grid(网格)**,这表明Oracle 11g旨在支持网格计算环境。通过网格计算,用户可以在多个服务器之间共享...

Global site tag (gtag.js) - Google Analytics