当前位置:  数据库>oracle

Oracle 创建用户及数据表的方法

    来源: 互联网  发布时间:2014-09-07

    本文导语:  一、概念 1. 数据库 (Database) 什么是数据库? 数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于...

一、概念
1. 数据库 (Database)
什么是数据库?
数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改和检索由统一软件进行管理和控制。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。
什么是数据库系统?
数据库系统是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。它通常由软件、数据库和数据管理员组成。其软件主要包括操作系统、各种宿主语言、实用程序以及数据库管理系统。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据管理员负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。数据库管理员一般是由业务水平较高、资历较深的人员担任

打个比喻吧:库据库就是存放数据的仓库. 当然仓库得组织得有序,这需要一套管理方法及管理组织,管理方法及管理组织结合就成了一个管理仓库的有机体 -- 系统.
2. 数据表空间 (Tablespace)
存放数据总是需要空间, Oracle把一个数据库按功能划分若干空间来保存数据。当然数据存放在磁盘最终是以文件形式,所以一盘一个数据表空间包含一个以上的物理文件
3. Oracle用户
一个数据库多个用户来创建和管理自己的数据, 每个用户有自己的权限,也可与其他用户共享数据
4. 数据表
在仓库,我们可能有多间房子,每个房子又有多个货架,每架又有多层。 我们在数据库中存放数据,最终是数据表的单元来存储与管理的。
5. 数据文件
以上几个概念都是逻辑上的, 而数据文件则是物理上的。就是说,数据文件是真正“看得着的东西”,它在磁盘上以一个真实的文件体现.

二、创建
(*凡oracle命令在 sqlplus中执行, 即运行 sqlplusw system/manager@test -这是以前安装时讲到的)
1. 数据库 当我们安装好oracle8i后,一个数据库系统就安装好了,其中有一个缺省的数据库,当然,我们还可以创建新的数据库.
2. 现在我们应该建数据表空间, 就如要存放货物,起码首先得把房子建好吧。就是存放东西的空间。表空间就存放数据的空间.
格式: create tablespace 表间名 datafile '数据文件名' size 表空间大小;
example:
create tablespace data_test datafile 'e:oracleoradatatestdata_1.dbf' size 2000M;
create tablespace idx_test datafile 'e:oracleoradatatestidx_1.dbf' size 2000M;
(*数据文件名 包含全路径, 表空间大小 2000M 表是 2000兆)
3. 建好 tablespace, 就可以建用户了
格式: create user 用户名 identified by 密码 default tablespace 表空间表;
example:
create user study identified by study default tablespace data_test;
(*我们创建一个用户名为 study,密码为 study, 缺少表空间为 data_test -这是在第二步建好的.)
(*抽省表空间表示 用户study今后的数据如果没有专门指出,其数据就保存在 data_test中, 也就是保存在对应的物理文件 e:oracleoradatatestdata_1.dbf中)
4. 授权给新用户
grant connect,resource to study;
--表示把 connect,resource权限授予study用户
grant dba to study;
--表示把 dba权限授予给 study
5. 创建数据表
在上面,我们已建好了用户 study 我们现在进入该用户
sqlplusw study/study@test
然后就可以在用户study中创建数据表了
格式: create table 数据表名 , 后面的详细参数,请你在网上搜索 "oracle" "create table" "语法". 太多了,我就不附在这里了。
下面给一个例子,自己体会.
create table test_user (
no number(5) not null , --pk
username varchar2(30) not null , --用户名
passpord varchar2(30) not null , --密码
constraint pk_connectdb primary key(no)
)storage (initial 10k next 10k pctincrease 0);
*下面讲解上面命令的各方面的含义
create table test_user --创建数据表
no number(5) not null , --pk
(列名或字段名) 数据类型(数据长度) 该数据列不能为空 ,是列之间的分隔符 --后的内容是注释
constraint pk_connectdb primary key(no)
(约束) 约束名 (主键) (列名) 意思就是 在数据表 test_user中所有行数据 no的值不能相同(这就是主键的含义)
storage (initial 10k next 10k pctincrease 0); 这个说起来比较复杂, 反正如果某个数据表要存放大量数据,就把initial和next后的值设置大一点, 否则设置小一点.
既然上面在创建数据表中没有特别指定 表空间,当然该表就存放在study缺省表空间data_test了.
create tablespace data_phonepos datefile 'd:installOracleXpdbdatafilephonepos.dbf' size 8000M;
create user phonepos identified by phonepos default tablespace data_phonepos;
grant connect, resource to phonepos;
grant dba to phonepos;

权限的查询
5。1 查询某个用户授予其他用户在当前用户模式下的对象权限
select * from user_tab_privs_made --假如当前用户为WENZI,那么查询结果就是由WENZI授权,在WENZI模式下的权限记录
5。2 查询某个用户授予其他用户在该用户模式对象及其他模式对象上的对象权限
select * from all_tab_privs_made -- 假如当前登录用户为WENZI,那么查询结果就是所有由WENZI授予的权限的记录

修改用户
ALTER USER avyrros
IDENTIFIED EXTERNALLY
DEFAULT TABLESPACE data_ts
TEMPORARY TABLESPACE temp_ts
QUOTA 100M ON data_ts
QUOTA 0 ON test_ts
PROFILE clerk;
删除用户
DROP USER username [CASCADE] --CASECADE 选项会删除该用户模式下的所有对象,建议在删除前,先确认是否有其他的依赖关系存在。
查询属于用户的对象
select owner,object_name,object_type,status from dba_objects where owner='WENZI'
5.3 查询为某个用户授予的,在其他模式对象上的权限
select * from user_tab_privs_recd --假如当前登录用户为WENZI,那么查询结果就是WENZI在其他模式对象上的权限
5.4 查询为某个用户授予的,在该用户模式对象与其他模式对象上的权限
select * from all_tab_privs_recd --假如当前用户为wenzi,则查询结果为wenzi在整个数据库中拥有权限的对象

角色管理
创建口令文件
orapwd file='..........pwd{SID}.ora' password='***(sys的密码)' tntries=10(口令文件最大的用户数量)
要使某个用户可以使用口令文件,必须为其授予SYSDBA权限,系统会自动将其加入到口令文件中。
grant sysdba to wenzi
当收回SYSDBA权限时,系统将对应的用户从口令文件中删除。
revoke sysdba from wenzi
查看口令文件管理的用户
select * from v$pwfile_users

    
 
 

您可能感兴趣的文章:

  • 用java怎样实现oracle数据库表和excel数据表的转换
  • Oracle对两个数据表交集的查询
  • jsp读取oracle8.1.6数据表中的中文,读出为?,着急啊。
  • oracle误删数据表还原的二种方法(oracle还原)
  • Oracle 数据表分区的策略
  • Oracle数据表分区的策略
  • oracle 视图权限 oracle 创建视图权限不足
  • oracle 创建表空间步骤代码
  • Linux系统下创建第二个oracle数据库
  • oracle 创建数据库小知识
  • Oracle新手教程 手工创建数据库的全部脚本及说明
  • Oracle创建用户权限的过程
  • Oracle WebLogic Server 安装并创建域
  • Oracle 10g创建表空间和用户并指定权限
  • linux redhat5.6安装oracle11g在自动创建实例时停住不动,有图
  • oracle 创建表空间详细介绍
  • 在RedHat Advance Server下安装Oracle9i R2不能创建数据库问题
  • 在oracle数据库里创建自增ID字段的步骤
  • oracle创建删除用户示例分享(oracle删除用户命令及授权)
  • Oracle使用配置文件创建口令管理策略
  • oracle命令行删除与创建用户的代码
  • oracle删除主键查看主键约束及创建联合主键
  • Oracle 10g表空间创建的完整步骤
  • Oracle创建主键自增表(sql语句实现)及触发器应用
  • Oracle 创建监控账户 提高工作效率
  • Oracle11.2 命令行手工最简创建数据库的过程
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux下安装oracle后使用命令行启动的方法 linux启动oracle
  • ORACLE 中修改用户密码的方法
  • Linux下完全卸载ORACLE 10G的方法
  • 将Oracle 8i数据成功移植Oracle 10g的方法
  • Oracle Connect to Idle Instance解决方法
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍 iis7站长之家
  • linux下用ODBC链接Oracle怎么连啊?跪求具体方法!!!
  • Linux系统下查看oracle SID的方法
  • oracle 彻底删除方法
  • window中oracle环境变量设置方法分享
  • Oracle 忘记密码的找回方法
  • oracle的job不能运行问题的解决方法
  • Linux下Oracle 10G DBCA等汉字乱码解决方法
  • Oracle中serveroutput参数一次设置永久保存方法
  • Oracle指定IP访问数据库方法
  • Oracle SID存在解決方法
  • 登录oracle数据库时密码忘记的解决方法
  • PB7 连接 Oracle 的设置方法
  • Oracle删除后不能重新安装的解决方法
  • oracle删除文件后数据库启动不了的处理方法
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3