Oracle权限和数据类型
oracle创建用户:
CREATE USER 用户名 IDENTIFIED BY 口令 [ACCOUNT LOCK|UNLOCK]
【注】LOCK|UNLOCK创建用户时是否锁定,默认为锁定状态。锁定的用户无法正常的登陆进行数据库操作。
比如创建一个用户tom,密码是aaa,默认为非锁定,格式是:
SQL>CREATE USER tom
2 IDENTIFIED BY aaa
3 ACCOUNT UNLOCK;
【注】Oracle在SQL*Plus中的命令以分号结尾,代表命令完毕并执行,系统同时会把该命令保存在缓存中,缓存中只保存最近执行过的命令,如果重新执行缓存中的命令,直接使用斜杠符。如果命令不以分号结尾,该命令只是写入缓存保存起来,但是并不执行。
尽管用户成功创建,但是还不能正常登陆oracle数据库系统,因为该用户还没有任何权限。如果用户能够正常登陆,至少需要CREATE SESSION 系统权限。
Oracle用户对数据库管理或对象操作的权利,分为系统权限和数据库对象权限。系统权限比如:CREATE SESSION,CREATE TABLE等。拥有系统权限的用户,允许拥有相应的系统操作。数据库对象权限,比如对表中的数据进行增删改操作等,拥有数据库对象权限的用户可以对所拥有的对象进行相应的操作。
数据库角色(role),数据库角色就是若干个系统权限的集合,常用的几个角色如下:
- connect角色:主要应用在临时用户,特别是那些不需要建表的用户,通常只赋予他们connect role。connect是使用Oracle的简单权限,拥有connect角色的用户,可以与服务器建立连接会话(session,客户端对服务器连接,称为会话)。
- resource角色:更可靠和正式的数据库用户可以授权resource role。resource提供给用户另外的权限以创建他们自己的表、序列、过程、触发器、索引等。
- dba角色:dba role拥有所有的系统权限,包括无限制的空间限额和给其他用户授权的能力。用户system拥有dba角色。
一般情况下,一个普通的用户,拥有connect和resource两个角色即可进行常规的数据库开发工作。
可以把某个权限授予某个角色,可以把权限、角色授予某个用户。系统权限只能由dba用户授权,对象权限由拥有该对象的用户授权,授权语法为:
GRANT 角色|权限 TO 用户(角色)
回收权限的语法是:
REVOKE 角色|权限 FROM 用户(角色)
修改用户密码的语法是:
ALTER USER 用户名 IDENTIFIED BY 新密码
修改用户处于锁定(非锁定)状态:
ALTER USER 用户名 ACCOUNT LOCK|UNLOCK
Oracle数据类型:
- CHAR(length):存储固定长度的字符串。参数length指定了长度,如果存储的字符创长度小于length,用空格填充。默认长度是1,最长不超过2000字节。
- VARCHAR2(length):存储可变长度的字符串。length指定了该字符串的最大长度。默认长度为1,最长不超过4000字符。
- VARCHAR(length):varchar和varchar2目前没有区别,不过Oracle以后的版本就不支持varchar类型,如果想新版本的数据库兼容,就不要用varchar,如果想和其他的数据库兼容就不要用varchar2.
- NUMBER(p,s):既可以存储浮点数,也可以存储整数,p表示数字的最大位数(如果是小数包括整数部分和小数部分和小数点,p默认是38位),s是指小数位数。
- DATE:存储日期和时间,存储纪元、4位年、月、日、时、分、秒,存储时间从公园前4712年1月1日到公元后4712年12月31日。
- TIMESTAMP:不但存储日期的年月日,时分秒,以及秒后6位,同时包含时区。
- CLOB:存储大的文本,比如存储非结构化的xml文档。
- BLOB:存储二进制对象,如图形、视频、声音等。
对应NUMBER类型的示例:
| 格式 | 输入的数字 | 实际的存储 |
| NUMBER | 1234.567 | 1234.56 |
| NUMBER(6,2) | 123.4526 | 123.45 |
| NUMBER(4,2) | 12345.67 | 输入的数字超过了所指定的精度,数据库不能存储 |
对于日期类型,可以使用sysdate内置函数可以获取当前的系统日期和时间,返回DATE类型,用systimestamp函数可以返回当前日期、时间和时区。
SELECT SYSDATE,SYSTIMESTAMP FROM DUAL
Oracle的查询中,必须使用“select 列···from 表”的完整语法,当查询单行函数的时候,from后面使用DUAL表,dual表在系统中只有一行一列,该表在输出单行函数时为了select...from的语法完整性而使用。
Oracle权限和数据类型的更多相关文章
- Oracle存储过程-自定义数据类型,集合,遍历取值
摘要 Oracle存储过程,自定义数据类型,集合,遍历取值 目录[-] 0.前言 1.Packages 2.Packages bodies 3.输出结果 0.前言 在Oracle的存储过程中,可能会遇 ...
- Oracle权限管理详解
Oracle权限管理详解 转载--CzmMiao的博客生活 Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级. ...
- Oracle中的数据类型和数据类型之间的转换
Oracle中的数据类型 /* ORACLE 中的数据类型: char 长度固定 范围:1-2000 VARCHAR2 长度可变 范围:1-4000 LONG 长度可变 最大的范围2gb 长字符类型 ...
- oracle权限
Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊用户publi ...
- Oracle数据库之数据类型
Oracle数据库之数据类型 Oracle基本数据类型(亦叫内置数据类型,internal datatypes或built-in datatypes)可以按类型分为:字符串类型.数字类型.日期类型.L ...
- 【转载】MyBatis JdbcType 与Oracle、MySql数据类型对应关系详解
[原文链接]:MyBatis JdbcType 与Oracle.MySql数据类型对应关系详解 1. Mybatis JdbcType与Oracle.MySql数据类型对应列表 2. Mybatis ...
- oracle权限管理学习
Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊用户pub ...
- MyBatis JdbcType 与Oracle、MySql数据类型对应关系详解
本文转自:http://blog.csdn.net/loongshawn/article/details/50496460 1. Mybatis JdbcType与Oracle.MySql数据类型对应 ...
- Mybatis JdbcType与Oracle、MySql数据类型对应列表
1. Mybatis JdbcType与Oracle.MySql数据类型对应列表 Mybatis JdbcType Oracle MySql JdbcType ARRAY JdbcType B ...
随机推荐
- 【BZOJ】3028: 食物
http://www.lydsy.com/JudgeOnline/problem.php?id=3028 题意: 每种食物的限制如下:汉堡:偶数个:可乐:0个或1个鸡腿:0个,1个或2个蜜桃:奇数个鸡 ...
- 【BZOJ1654】[Usaco2006 Jan]The Cow Prom 奶牛舞会 赤果果的tarjan
Description The N (2 <= N <= 10,000) cows are so excited: it's prom night! They are dressed in ...
- java实现BitMap
package bitmap; public class BitMap { private byte[] bytes; public BitMap(byte[] bytes) { super(); t ...
- android中的Dialog
一.Dialog概述 二.使用系统自带的Dialog 1.新建Builder AlertDialog.Builder builder = new AlertDialog.Builder(StoryAc ...
- Maya 建模完成后的整理
我们在使用Maya建模完成后可能会进行发布,为了自己或他人的方便使用,我们需要对建立好的模型进行些处理: 1. 删除历史记录:选择模型,Edit -> Delete by Type -> ...
- Hadoop.2.x_MR-Shuffle过程
1.map到reduce中间的一个过程 洗牌,打乱(打乱我们传递的所有元素)(流程:input->map->reduce->output) 2.map()->shuffle-& ...
- 关于JS的算法
一.快速排序 function qSort(arr) { if(arr.length === 0) { return []; } var left = []; var right = []; var ...
- HDU2067/HDU1267 /HDU1130 递推
小兔的棋盘 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- Rocky4.2下安装金仓v7数据库(KingbaseES)
1.准备操作系统 1.1 系统登录界面 1.2 操作系统版本信息 jdbh:~ # uname -ra Linux jdbh -x86_64 # SMP Fri Dec :: CST x86_64 G ...
- Lua迭代器和泛型for
1.迭代器与closure 在lua中,迭代器通常为函数,每调用一次函数,会返回集合中的下一个元素.每个迭代器在成功调用的时候,都需要保存一些状态,closure(闭包)完美为迭代器运用而生. fun ...