`
anson_xu
  • 浏览: 505807 次
  • 性别: 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文档,你将能够...

    oracle11g学习心得

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

    Oracle 10g 安装(Windows下)

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

    Oracle10g RAC集群技术.rar

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

    欧拉系统安装oracle 11g

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

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

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

    Oracle 10g 课件

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

    Oracle10g for Solaris10

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

    Oracle 11g学习笔记

    Oracle 11g是一款强大的关系型数据库管理系统,广泛应用...总结,Oracle 11g的学习涵盖了数据库基础、安装配置、SQL语言、存储管理、性能优化等多个方面。通过深入学习和实践,可以成为一名合格的Oracle数据库管理员。

    最牛逼的Oracle 11g OCP学习笔记

    总结,"最牛逼的Oracle 11g OCP学习笔记"涵盖了Oracle数据库的各个方面,从基础到高级,从理论到实践,为成为合格的Oracle数据库管理员提供了全面的学习路径。通过深入学习和实践,不仅可以获取OCP认证,还能在实际...

    Oracle11g从入门到精通2

    对于初学者,《Oracle11g从入门到精通》是一本很好的入门教程,对Oracle管理员和应用程序开发员,也有很好的学习和参考价值。  Oracle数据库系统是数据库领域最优秀的数据库之一,《Oracle11g从入门到精通》以...

    oracle10g rac配置

    Oracle 10g RAC(Real Application Clusters)配置是一个复杂的过程,涉及到多个步骤和组件,确保在两个或更多节点之间实现高可用性和负载均衡。以下是对RAC配置的详细说明: 1. **引言** 引言部分通常会阐述文档...

    oracle 10g RAC 虚拟机上安装

    总结来说,Oracle 10g RAC在VMware虚拟机上的安装是一项复杂但实用的技术实践,它可以帮助你理解RAC的工作原理和管理方法,而无需投入大量硬件成本。通过遵循上述步骤,你可以构建一个基本的RAC测试环境,进一步提升...

    oracle 10g 实用培训教程

    oracle.10g_实用培训教程方便刚接触数据库的人学习总结,方便数据库运维人员参考。数据库开发人员可以用其当做参考书

    oracle 10g rac 教程

    Oracle 10g Real Application Clusters (RAC...总结起来,Oracle 10g RAC是企业级数据库解决方案,通过集群技术提供高可用性和可伸缩性。理解并掌握RAC的关键概念和技术,对于管理和维护大型分布式数据库系统至关重要。

    Oracle 11g Express 官方linux 64位版本

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

    oracle 10g 的学习笔记

    总结来说,Oracle 10g的学习涵盖了数据库创建、客户端管理、连接模式选择和权限管理等多个方面。理解并熟练掌握这些知识点对于Oracle数据库的日常管理和维护至关重要。通过对比其他数据库系统,可以帮助我们更好地...

    开源项目-go-goracle-goracle.zip

    《Go语言连接Oracle数据库:goracle库深度解析》 在Go语言中,Oracle数据库的连接与操作是一项重要的技能。开源项目“go-goracle”...通过学习和掌握goracle,Go程序员可以更轻松地构建与Oracle数据库相关的应用程序。

    oracle 11g 考试题库

    总结来说,Oracle 11g的OCP认证涵盖了数据库的各个方面,从基础的管理操作到高级的特性应用。通过全面学习并实践题库中的题目,你将能够掌握Oracle数据库的核心管理技能,并为自己的职业生涯添加一个有力的证明。在...

Global site tag (gtag.js) - Google Analytics