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权限和数据类型的更多相关文章

  1. Oracle存储过程-自定义数据类型,集合,遍历取值

    摘要 Oracle存储过程,自定义数据类型,集合,遍历取值 目录[-] 0.前言 1.Packages 2.Packages bodies 3.输出结果 0.前言 在Oracle的存储过程中,可能会遇 ...

  2. Oracle权限管理详解

    Oracle权限管理详解 转载--CzmMiao的博客生活 Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级. ...

  3. Oracle中的数据类型和数据类型之间的转换

    Oracle中的数据类型 /* ORACLE 中的数据类型: char 长度固定 范围:1-2000 VARCHAR2 长度可变 范围:1-4000 LONG 长度可变 最大的范围2gb 长字符类型 ...

  4. oracle权限

    Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊用户publi ...

  5. Oracle数据库之数据类型

    Oracle数据库之数据类型 Oracle基本数据类型(亦叫内置数据类型,internal datatypes或built-in datatypes)可以按类型分为:字符串类型.数字类型.日期类型.L ...

  6. 【转载】MyBatis JdbcType 与Oracle、MySql数据类型对应关系详解

    [原文链接]:MyBatis JdbcType 与Oracle.MySql数据类型对应关系详解 1. Mybatis JdbcType与Oracle.MySql数据类型对应列表 2. Mybatis ...

  7. oracle权限管理学习

      Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊用户pub ...

  8. MyBatis JdbcType 与Oracle、MySql数据类型对应关系详解

    本文转自:http://blog.csdn.net/loongshawn/article/details/50496460 1. Mybatis JdbcType与Oracle.MySql数据类型对应 ...

  9. Mybatis JdbcType与Oracle、MySql数据类型对应列表

    1. Mybatis JdbcType与Oracle.MySql数据类型对应列表 Mybatis JdbcType Oracle MySql JdbcType ARRAY     JdbcType B ...

随机推荐

  1. Let It Be - The Beatles - Lyrics

    轉載自 https://www.youtube.com/watch?v=0714IbwC3HA When I find myself in times of trouble, Mother Mary ...

  2. Oralce中SQL删除重复数据只保留一条(转)

    用SQL语句,删除掉重复项只保留一条 在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢 .查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select ...

  3. js中操作数组的一些方法【转】

    增 push   在数组的末尾添加一个或多个元素,并返回新的长度.  array.push(1,2,3.........) unshift  在数组的开头添加一个或多个元素,并返回新的长度. arra ...

  4. GO语言练习:struct基础练习

    1.代码 2.运行 1.代码 package main import "fmt" type Rect struct { x, y float64 width, height flo ...

  5. Js实现MD5加密

    在页面中引用md5.js文件,调用方法为 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8&qu ...

  6. java分享第二天(变量及命名规范)

    1 JAVA是一种强类型语言,每个变量都必须声明其类型 2 Java变量是程序中最基本的存储单元,其主要包括变量名,变量类型和作用域 3 声明变量可以一行声明多个 4局部变量:方法或语句块内部定义的变 ...

  7. 在springmvc中,获取Connection接口

    ServletContext context = request.getSession().getServletContext();WebApplicationContext wac = WebApp ...

  8. 抄书 Copying Books UVa 714

    Copying  Books 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=85904#problem/B 题目: Descri ...

  9. iOS五种本地缓存数据方式

    iOS五种本地缓存数据方式   iOS本地缓存数据方式有五种:前言 1.直接写文件方式:可以存储的对象有NSString.NSArray.NSDictionary.NSData.NSNumber,数据 ...

  10. [CareerCup] 18.5 Shortest Distance between Two Words 两单词间的最短距离

    18.5 You have a large text file containing words. Given any two words, find the shortest distance (i ...