02.Oracle数据库基本操作

Oracle数据库基本操作

PL/SQL工具提示

在工具中,进行查询,如果不选中就进行执行操纵,会将整个脚本执行!这样是很危险的!所以,一定的选中

一、创建表空间

表空间,Oracle数据库的逻辑单元。

1). 数据库、表空间、用户、表的关系

  1. 一个数据库下可以建立多个表空间;
  2. 一个表空间可以与多个数据文件(物理结构)关联;
  3. 一个表空间可建立多个用户;
  4. 一个用户下可以建立多个表(用户是管理表的基本单位);

2). 创建表空间的语法

-- 创建表空间
create tablespace itheima -- 表空间名称
datafile 'c:\itheima.dbf' -- 表空间对应的数据文件,要以.dbf命名
size 100m  -- 初始大小
autoextend on
next 10m;  -- 达到初始大小后的自动增长步长

-- 删除表空间语法
drop tablespace itheima;

二、创建用户

1). 创建用户的语法

Oracle数据库与其他数据库产品的区别在于,表和其他数据库对象都是存储在用户下的。

-- 创建用户 用户名与表空间没有任何冲突
create user itheima -- 用户名
identified by itheima -- 用户名密码
default tablespace itheima -- 所属的表空间

2). 给用户授权

  1. Oracle数据库中常用角色

    • connect : 连接角色
    • resource: 开发者角色
    • dba: 超级管理员角色
  2. 为用户授权语法

-- 给itheima用户授予dba角色,以便学习使用;
grant dba to itheima;
  1. PLSQL中切换用户
    • Session --> Log off --> Log on

3). 三种用户权限详解

1. CONNECTION 角色:

是授权最终用户的典型权限最基本的权限

  1. ALTER SESSION --修改会话
  2. CREATE CLUSTER --建立聚簇
  3. CREATE DATABASE LINK --建立数据库链接
  4. CREATE SEQUENCE --建立序列
  5. CREATE SESSION --建立会话
  6. CREATE SYNONYM --建立同义词
  7. CREATE VIEW --建立视图

2. RESOURCE 角色

授予开发人员的角色

  1. CREATE CLUSTER --建立聚簇
  2. CREATE PROCEDURE --建立过程
  3. CREATE SEQUENCE --建立序列
  4. CREATE TABLE --建表
  5. CREATE TRIGGER --建立触发器
  6. CREATE TYPE --建立类型

3. DBA 角色

拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构,并且系统权限也需要DBA授出,且DBA用户可以操作全体用户的任意表,包括删除;DBA权限同样需要被赋予,赋予的方式是进入system下,给指定的用户赋予dba权限,否则无法正常登陆!

三、Oracle常用数据类型介绍

数据类型 描述
varchar 字符串(被淘汰)
varchar2 字符串(推荐、常用)
NUMBER NUMBER(n)表示一个整数,长度为n;NUMBER(m,n)表示一个小数,总长度为m,小数位数是n,整数位数是m-n
DATA 日期
CLOB 大对象,大数据文本类型,可存4G
BLOB 大对象,二进制数据,可存4G

四、 PLSQL客户端工具中文乱码问题的解决

  1. 查看服务器端编码
select userenv('language') from dual;

-- 我实际查到的结果为: AMERICAN_AMERICA.ZHS16GBK
  1. 执行语句
select * from V$NLS_PARAMETERS

查看第一行中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中是否和第一步得到的值一样。如果不是,需要设置环境变量.否则PLSQL客户端使用的编码和服务器端编码不一致,插入中文时就会出现乱码.

3.设置环境变量

计算机->属性->高级系统设置->环境变量->新建

设置变量名: NLS_LANG
变量值:第1步查到的值,我的是: AMERICAN_AMERICA.ZHS16GBK
  1. 重新启动PLSQL,插入数据正常

你可能感兴趣的:(02.Oracle数据库基本操作)