Oracle 新手语法记录
一、用户
1. 创建用户
语法:create user 用户名 identified by 口令;
create user test identified by test;
2. 修改用户
语法:alter user 用户名 identified by 口令;
alter user test identified by 123456;
3. 删除用户
语法:drop user 用户名;
drop user test;
若用户拥有对象,则不能直接删除,否则将返回一个错误值,指定关键字 cascade ,可删除用户所有的对象,然后再删除用户
语法:drop user 用户名 cascade;
drop user test cascade;
4. 解锁用户
alter user 用户名 account unlock;
二、授权角色
1.含义概述
三种标准角色
connect role(连接角色)
- 临时用户,特指不需要建表的用户,通常只赋予他们 connect role
- connect是使用Oracle简单权限,这种权限只对其他用户的表有访问权限,包括
select/insert/update/delete等。- 拥有connect role 的用户还能创建表,师徒,序列(sequence),簇(cluster),同义词(synonym),回话(session)和其他 数据的链(link)
resource (资源角色)
- 更可靠和正式的数据库用户可以授予 resource role
- resource 提供给用户另外的权限以穿件他们自己的表,序列,过程(procedure),触发器(tigger),索引(Index)和簇(cluster)
dba role (数据库管理员角色)
- dba role 拥有所有的系统权限
- 包括无限制的空间限额和其他用户授予各种权限的能力,system 由dba 用户拥有。
2.授权命令
语法:grant connect,resource to 用户名;
grant connect,resource to test;
3.撤销权限
语法:revoke connect,resource from 用户名;
revoke connect,resource from test;
三、创建、授权、删除角色
除了前面讲到的三种系统角色----connect、resource和dba,用户还可以在oracle创建自己的role。用户创建的role可以由表或系统权限或两者的组合构成。为了创建role,用户必须具有create role系统权限。
1. 创建角色
语法:create role 角色名;
create role testrole;
2. 授权角色
语法:grant select on class to 角色名;
grant select on class to testRole;
3. 删除角色
语法:drop role 角色名;
drop role testRole;
注意:与testRole角色相关的权限将从数据库全部删除
四、创建表空间
1. 创建临时表空间
create temporary tablespace xlzf_temp
tempfile 'C:\Data\xlzf_temp.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
2. 创建数据表空间
create tablespace xlzf_data
logging
datafile 'C:\Data\xlzf_data.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
3. 创建用户并指定表空间
create user xlzf identified by xlzf
default tablespace xlzf_data
temporary tablespace yuhang_temp;
4. 给用户授予权限
grant connect,resource,dba to yuhang;
5. 删除表空间
drop tablespace 表空间名 including CONTENTS and datafiles;
五、导入、导出数据库
执行环境:DOC
1. 导出数据库
将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y
将数据库中system用户与sys用户的表导出
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
将数据库中的表table1 、table2导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
将数据库中的表table1中的字段filed1以"00"打头的数据导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"
2. 导入数据库
将D:\daochu.dmp 中的数据导入 TEST数据库中。
imp system/manager@TEST file=d:\daochu.dmp
上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
将d:\daochu.dmp中的表table1 导入
imp system/manager@TEST file=d:\daochu.dmp tables=(table1)
Oracle 新手语法记录的更多相关文章
- Oracle存储过程语法
原文链接:http://www.jb51.net/article/31805.htm Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 ...
- ORACLE基本语法
ORACLE基本语法 一.ORACLE的启动和关闭1.在单机环境下要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下su - oraclea.启动ORACLE系统oracle>s ...
- Oracle 多行记录合并/连接/聚合字符串的几种方法
怎么合并多行记录的字符串,一直是oracle新手喜欢问的SQL问题之一,关于这个问题的帖子我看过不下30个了,现在就对这个问题,进行一个总结.-什么是合并多行字符串(连接字符串)呢,例如: SQL&g ...
- Oracle系列:记录Record
Oracle系列:记录Record 分类: [Oracle] (15) 版权声明:本文为博主原创文章,未经博主允许不得转载. Oracle系列:记录(Record) 一,什么是记录(Record) ...
- Oracle多行记录合并/连接/聚合字符串的几种方法
怎么合并多行记录的字符串,一直是oracle新手喜欢问的SQL问题之一,关于这个问题的帖子我看过不下30个了,现在就对这个问题,进行一个总结. 什么是合并多行字符串(连接字符串)呢,例如:SQL& ...
- [转]Oracle 存储过程语法
转自:http://www.cnblogs.com/chuncn/archive/2009/04/29/1381282.html 存储过程 1 CREATE OR REPLACE PROCEDURE ...
- ORACLE| ORACLE基础语法汇总
创 ORACLE| ORACLE基础语法汇总 2018-07-18 16:47:34 YvesHe 阅读数 9141更多 分类专栏: [数据库] 版权声明:本文为博主原创文章,遵循CC 4.0 B ...
- MarkDown常用语法记录
目录 1. 斜体和粗体 2. 分级标题 3. 超链接 3.1 行内式(推荐) 3.2 行外式 3.3 自动链接 4. 锚点 5. 列表 5.1无序列表 5.2有序列表 6. 引用 7. 插入图像 8. ...
- oracle去掉重复记录语句
oracle去掉重复记录语句 比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来 select p1.* from persons p1 ...
随机推荐
- Android中图片旋转
Activity_main.xml文件配置 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/androi ...
- MySQL 5.6 Reference Manual-14.5 InnoDB Tablespace Management
14.5 InnoDB Tablespace Management 14.5.1 Resizing the InnoDB System Tablespace 14.5.2 Changing the ...
- C#关于VSHOST.EXE停止工作的解决办法,VS2008
主要原因就是电脑系统系统32位和64位的问题在项目属性中修改下即可. 方法: 右击项目 - 属性 - 生成 - 目标平台 - Any CPU[改为x86] 虽然简单,但如不知原因却恼火的紧,贴出来如有 ...
- 用python 4行搞定基数排序
from random import randint def main(): A = [randint(1, 99999999) for _ in xrange(9999)] for k in xra ...
- trigger事件就是继承某一个类的事件.
<html><head><script type="text/javascript" src="/jquery/jquery.js" ...
- 匈牙利&&EK算法(写给自己看)
(写给自己看)匈牙利算法(最大匹配)和KM算法(最佳匹配) 匈牙利算法 思想 不断寻找增广路,每次寻得增广路,交换匹配边和非匹配边,则匹配点数+1 这里增广路含义:交错路,即从未匹配点出发经过未匹配边 ...
- SyntaxError Non-ASCII character '\xe5' in file
环境: windows7 Python 2.7.16 在源码中添加注释之后报错如下: (WeChat) E:\WorkHome\Wechat>python firstBlood.py Trace ...
- [Libre 6281] 数列分块入门 5 (分块)
水一道入门分块qwq 题面:传送门 开方基本暴力.. 如果某一个区间全部都开成1或0就打上标记全部跳过就行了 因为一个数开上个四五六次就是1了所以复杂度能过233~ code: //By Menteu ...
- 【LibreOJ 6280】 数列分块入门 4 (分块)
题目:传送门 听说用define会使代码简洁qwq code: //By Menteur_Hxy #include<cstdio> #include<iostream> #in ...
- python中字符串逆序的实现
没有直接的逆序函数,有两种常用方式可将字符串逆序,一为切片,一为利用list的reverse,示例如下: #切片x=' y=x[::-1] #reverse函数 y=list(x) y.reverse ...