Oracle Database 11g:SQL基础 I
- 格式:docx
- 大小:108.71 KB
- 文档页数:3
第9章用户、特权和角色本章内容包括:●介绍更多关于用户的知识。
●了解如何使用特权来确保用户能够在数据库中执行任务。
●介绍两种特权类型:系统特权和对象特权。
●介绍系统特权怎样允许执行操作,例如执行DDL语句。
●介绍对象特权怎样允许执行操作,例如执行DML语句。
●介绍如何将特权组合在一起形成角色。
●介绍如何审计SQL语句的执行。
Oracle Database 11g SQL 开发指南260注意:您必须输入本章介绍的SQL 语句才能运行相应的例子,因为这些语句未包含在任何脚本中。
9.1 用户本节将介绍如何创建用户、修改用户密码以及删除用户。
本章将会用到“表空间(tablespace)”这一术语。
数据库使用表空间来存储分离的对象,其中可以包含表、类型和PL/SQL 代码等。
一般来说,相关的对象被分成一组并存储在相同的表空间中。
例如,可能创建一个定单输入应用程序,并将此应用程序的所有对象存储在一个表空间中,同时可能创建一个供应链应用程序,并将此应用程序的对象存储在另一个表空间中。
关于表空间的更详细内容,请参阅由Oracle 公司出版的Oracle Database Concepts 手册。
9.1.1 创建用户要在数据库中创建一个用户,就要使用CREATE USER 语句。
CREATE USER 语句的简化语法如下所示。
CREATE USER user_name IDENTIFIED BY password [DEFAULT TABLESPACE default_tablespace][TEMPORARY TABLESPACE temporary_tablespace];其中:● user_name 指定要创建的数据库用户的名字。
● password 指定这个数据库用户的密码。
● default_tablespace 指定存储数据库对象使用的默认表空间。
如果此处忽略了默认的表空间,就默认使用SYSTEM 表空间,这个表空间在所有的数据库中都存在。
Oracle11g第一章Oracle数据库简介(1)第一章Oracle数据库简介(2)第二章SQL查询和SQL函数第三章锁和表分区第四章数据库对象第五章使用PLSQL第六章游标管理第七章子程序和程序包第八章触发器和内置程序包第九章备份与恢复简介第一章Oracle数据库简介(1)一、了解Oracle数据库思路:基础架构——Sql语句——PL/SQL——存储过程包。
二、Oracle数据库体系结构的各种组件:物理组件和逻辑组件。
三、Oracle数据库是对象关系型数据库管理系统(ORDBMS):在数据安全性和数据完整性控制方面性能优越;跨操作系统,跨硬件平台的数据互操作能力。
四、Oracle数据库的主要特点:支持多用户,大事务量的事务处理;数据安全性和完整性控制;支持分布式数据处理;可移植性。
五、数据库的体系结构是指数据库的组成、工作过程与原理,以及数据在数据库中的组织与管理机制。
Oracle实例六、Oracle数据库实例:七、数据库基本组件:八、使用Oracle数据库开发工具:第一步:需要启动Oracle核心服务引擎:Oracleservice+SID :SID是指在安装过程中指定数据库的全局数据库名称;如:Oracleserviceaccp,(注:点之前的名称长度不能超过8个)。
第二步:启动监听服务器:1、OEM企业管理启动:进入之后:如果有其他,就移除再添加,弹出的窗口设置:然后,建立连接,进行用户登录:先登录:sys/sys AS SYSDBA进行授予scott/tiger 用户于DBA权限;在安全性用户里授权:DBA权限接着点击应用,断开连接,重新连接服务器,启动scott/tiger普通用户:可以看到配置信息方案里面有用户方案,方案里有数据表结构和其他信息:可以创表建约束2、sqlplus GUI版:进入之后:或者:进入之后的窗口:3、sqlplus CMD版:在dos命令下编辑:改变用户:接着就可以增删改查。
Oracle11g数据库管理与开发基础教程课后习题及答案第⼀章选择题1、Oracle数据库服务器包含的两个主要组件是(AB)A、Oracle实例B、oracle数据库C、内存结构D、后台进程2、create database 创建Oracle数据库时创建的⽂件包括(AC)A、数据⽂件B、控制⽂件C、⽇志⽂件D、初始化参数⽂件3、创建Oracle数据库时,createdatabase语句中指出了需要创建的数据⽂件、⽇志⽂件存储路径和名称,但没有指出需要创建的控制⽂件,因此创建数据库之前需要创建(D)个控制⽂件。
A、0B、1C、2D、任意数量4、调⽤shutdown命令关闭Oracle数据库后,以下(D)命令关闭的数据库处于不⼀致状态。
A、shutdown normalB、shutdown transactionalC、shutdown immediateD、shutdown abort5、作为普通⽤户,只有当数据库处于以下(C)状态下才可连接访问。
A、NUMOUNTB、MOUNTC、OPEND、CLOSE填空题1、SGA可分为以下⼏种主要区域:(SGA固定)、(数据库缓冲区缓存)、(重做⽇志缓冲区)、(共享池)等。
2、Oracle实例有多种后台进程,其中每个数据库实例上必须启动的后台进程包括(数据库写⼊进程)、(⽇志写⼊进程)、(检查点进程)、(进程监视进程)、(系统监视进程)等。
3、Oracle数据库的逻辑存储结构是(表空间)、(段)、(区)、(数据块)等。
4、Oracle数据库逻辑上的表空间结构与磁盘上的物理(数据)⽂件相关联。
5、下⾯连接字符串采⽤的是(简易连接)命名⽅式。
CONNECT Scott/tiger@dbs:1525@/doc/727db4ff03768e9951e79b89680203d8ce2f6aac.html编程题1.写出以下操作的SQL*PLUS命令语句:先启动Oracle实例到“已启动实例状态”,再修改Oracle实例到“数据库已装载状态”,最后修改Oracle实例到打开状态。
[键入文字]眺望Oracle1 1g 数据库管理基础一Oracle 官方文档翻译北极熊2013年32周 (1)1开始数据库管理 (2)1.1各种Oracle数据库用户 (2)1.1.1数据库管理员 (2)1.1.2安全人员 (2)1.1.3网络管理员 (3)1.1.4应用开发者 (3)1.1.5应用管理者 (3)1.1.6数据库用户 (3)1.2数据库管理员的任务 (3)1.2.1评估数据库服务器硬件 (3)1.2.2安装数据库软件 (4)1.2.3规划数据库 (4)1.2.4建立并打开数据库 (4)1.2.5备份数据库 (4)1.2.6登记系统用户 (4)1.2.7实现数据库设计 (5)1.2.8备份完整功能的数据库 (5)1.2.9调优数据库性能 (5)1.2.10下载并安装补丁 (5)1.2.11滚动安装到附加主机 (5)1.3在数据库中运行命令和SQL (6)1.3.1关于SQL*Plus (6)1.3.2使用SQL连接到数据库 (6)1.4标识你的数据库发行版本 (9)1.4.1检查当前版本号 (9)1.5关于数据管理员安全与权限 (10)1.5.1数据库管理员的操作系统账号: (10)1.5.2管理员账号: (10)1.6数据库管理员认证 (10)1.6.1管理员权限 (10)1.6.2SYSDBA和SYSOPER (11)1.6.3作为SYSDBA连接的例子 (11)1.6.4选择数据库管理员认证方法 (12)1.7建立和维护密码文件 (13)1.7.1建立密码文件 (13)1.7.2密码文件参数描述 (14)共享和禁用密码文件 (14)1.7.4保持管理员密码和数据字典同步 (15)1.7.5管理密码文件 (15)1.8数据工具 (15)1.8.1SQL*Loader (15)1.8.2Export和Import 工具 (16)本章真正的很基础,很基础。
说实话翻译时就感觉是练习练习英文,有点基础都跳过或是有选择的看一点吧。
Chap1DML语句是select 、insert、update、delete和mergeDDL语句是create、alter、drop、rename、truncate、commentDCL语句是grant、revokeTCL语句是commit、rollback和savepointsql16个基本命令——参考书《OCA认证考试指南(IZ0-051)》清华大学出版社《oracle database sql language reference 11g》有非遵循格式字符串依赖于格式掩码chap22.1.3 关于语句中有多个单引号时处理:1、select'It''s a bird,no plan can''t be 'as pharsefrom dual; 此处两个单引号即为一个单引号2、只能用q 再加’(语句)’select q'(It's a bird,no plan can't be)'as pharsefrom dual;均输出PHARSE----------------------------It's a bird,no plan can't be2.1.4定义变量与申明变量的区别:定义变量即为变量分配名称并指定数据类型;申明变量首先需要定义变量,然后为其赋值。
(赋值也称为初始化)替代变量前面要加&前缀且若替代变量为字符型时要加两个单引号如’&a’declarelv_whom varchar2(20);/*lv-whom为申明变量,a为替代变量,a没有变量类型*/beginlv_whom := '&a';end;或者declarelv_whom varchar2(20);beginlv_whom := &a;end;但是要在输入框中字符加两个单引号替代变量用define申明,且定义时不可以指定类型,默认为char型①Define x=emp;Select * from &x; /*调用要用&,此处不加单引号,解析后即为emp表*/② define x=adasd;select'&x' z from dual;/*此处解析后变为select' adasd ' z from dual ,此处必须要有单引号,使adasd作为直接变量,否则出错*/所以替代变量是否加单引号要根据解析的值来确定注意:避免在声明块中将任何实参赋给局部变量(constant变量除外),且替代变量与绑定变量都不应该在声明块中赋值定义为constant的变量,必须在申明块中申明,这意味着常量必须先定义,再给他赋一个不变的值绑定变量(bind)用var或variable申明使用冒号(:)作为前缀var a numberbegin:a := 22;end;上面也可以输出结果,下面也可以输出结果,但二者不能同时放一块print a; /*此处a前面不能加冒号,print可用来输出所有类型的变量*/另外也可通过exec直接给绑定变量赋值:SQL> var x number /*必须要先定义再赋值,而替代变量定义时不需指定类型,直接赋值即可*/SQL> var y numberSQL> exec :x :=1;:y :=2;/*exec 等价于begin … end*/PL/SQL procedure successfully completedx---------1y---------2也可以先定义好绑定变量,再将其赋给其他变量:var a numberbegin:a := 22;end;现将其运行再declarelv_a number;beginlv_a:= :a;dbms_output.put_line('hello,'||lv_a||'.');end;结果:hello,22.将上面的代码放入到d:\q.sql中用@d:\q.sql;调用即可,但是里面的代码要正确2.1.5命名块1、过程块create or replace procedure abc (aa varchar2) isbegindbms_output.put_line('sdhl'||aa);end;exec abc('dkjdhhdj');可能出现错误一:【ORA-00955: 名称已由现有对象使用】这个错误说的不仅仅是有可能你有存储过程使用了【abc】,还有可能是你有表名叫【abc】或者其他oracle对象叫【abc】。
Oracle Database 11g:SQL基础I 适合人群:
理解数据库的基本概念;使用过任何一种数据库。
培训目标:
学完本课程后,学员将具备以下能力:
使用SELECT 语句在表中检索行数据和列数据
利用SQL 函数生成和检索自定义的数据
使用高级查询语言
运行数据操纵语言(DML) 操纵数据
管理不同时区的数据类型
使用高级子查询搜索数据
课程大纲:
第一章.使用SQL SELECT语句检索数据
1.1列出SQL SELECT语句
1.2.从一个基本的SELECT语句的输出生成报告数据
1.3选择所有列
1.4选择指定的列
1.5 使用列标题默认值
1.6使用算术运算符
1.7了解运算符优先级
1.8了解DESCRIBE命令显示表的结构
第二章对数据进行限制和排序
2.1包含WHERE子句的查询检索输出限制
2.2列出在WHERE子句中使用比较运算符和逻辑运算符
2.3 描述比较和逻辑运算符优先级的规则
2.4 在WHERE子句中使用字符串
2.5编写包含ORDER BY子句的查询
2.6降序和升序排序
第三章使用单行函数自定义输出
3.1描述单行和多行函数之间的差异
3.2 在SELECT和WHERE子句中操作字符串的字符函数
3.3 操作ROUND,TRUNC和MOD函数
3.4执行日期类型的算术操作
3.5 使用日期函数来计算日期
第四章使用转换函数和条件表达式
4.1隐式和显式数据类型转换
4.2使用TO_CHAR,TO_NUMBER,和TO_DATE转换函数4.3嵌套函数
4.4 应用NVL,NULLIF和COALESCE函数
4.5 在SELECT语句中使用IF THEN ELSE的逻辑条件
第五章使用组函数报告汇总数据
5.1 在SELECT语句中使用聚合函数
5.2 使用GROUP BY子句
5.3 使用HAVING子句
第六章显示多个表中的数据
6.1 确定联接类型
6.2 检索自然联接的记录
6.3 使用表别名编写短代码并在多个表中明确区分列
6.4 列出外部联接类型LEFT、RIGHT 和FULL
第七章使用子查询来解析查询
7.1 描述子查询
7.2 定义子查询
7.3 列出子查询类型
7.4 单行和多行子查询
第八章使用SET 运算符
8.1 描述SET运算符
8.2 使用SET运算合并成多个查询结果
8.3 控制使用SET运算符时,返回行的顺序
第九章处理数据
9.1 描述DML语句
9.2 INSERT语句
9.3 使用UPDATE语句来更改表中的行
9.4 DELETE语句删除表中的行
9.5 COMMIT和ROLLBACK语句
9.6 读一致性
第十章使用DDL 语句创建和管理表
10.1数据库对象分类
10.2 查看表结构
10.3 列出的数据类型
10.4创建一个简单的表
10.5 创建表的时候创建约束
10.6Schema对象
第十一章创建其他Schema对象
11.1创建一个简单的和复杂的视图11.2从视图中检索数据
11.3 创建,维护和使用序列
11.4创建和维护索引
11.5创建私有和公有同义词
第十二章管理方案对象
12.1添加,修改和删除列
12.2添加,删除和延迟约束
12.3启用和禁用约束
12.4 创建和删除索引
第十三章使用高级子查询搜索数据13.1 多列子查询
13.2pairwise和Nonpairwise比较13.3使用标量子查询表达式
13.4相关子查询解决问题
13.5更新与删除行使用相关子查询13.6使用EXISTS和NOT EXISTS运算符13.7使用WITH子句
13.8WITH子句中使用递归。