02.Oracle數(shù)據(jù)庫(kù)基本操作

Oracle數(shù)據(jù)庫(kù)基本操作

PL/SQL工具提示

在工具中,進(jìn)行查詢,如果不選中就進(jìn)行執(zhí)行操縱,會(huì)將整個(gè)腳本執(zhí)行!這樣是很危險(xiǎn)的!所以,一定的選中

一、創(chuàng)建表空間

表空間,Oracle數(shù)據(jù)庫(kù)的邏輯單元。

1). 數(shù)據(jù)庫(kù)、表空間、用戶、表的關(guān)系

  1. 一個(gè)數(shù)據(jù)庫(kù)下可以建立多個(gè)表空間;
  2. 一個(gè)表空間可以與多個(gè)數(shù)據(jù)文件(物理結(jié)構(gòu))關(guān)聯(lián);
  3. 一個(gè)表空間可建立多個(gè)用戶;
  4. 一個(gè)用戶下可以建立多個(gè)表(用戶是管理表的基本單位);

2). 創(chuàng)建表空間的語(yǔ)法

-- 創(chuàng)建表空間
create tablespace itheima -- 表空間名稱
datafile 'c:\itheima.dbf' -- 表空間對(duì)應(yīng)的數(shù)據(jù)文件,要以.dbf命名
size 100m  -- 初始大小
autoextend on
next 10m;  -- 達(dá)到初始大小后的自動(dòng)增長(zhǎng)步長(zhǎng)

-- 刪除表空間語(yǔ)法
drop tablespace itheima;

二、創(chuàng)建用戶

1). 創(chuàng)建用戶的語(yǔ)法

Oracle數(shù)據(jù)庫(kù)與其他數(shù)據(jù)庫(kù)產(chǎn)品的區(qū)別在于,表和其他數(shù)據(jù)庫(kù)對(duì)象都是存儲(chǔ)在用戶下的。

-- 創(chuàng)建用戶 用戶名與表空間沒有任何沖突
create user itheima -- 用戶名
identified by itheima -- 用戶名密碼
default tablespace itheima -- 所屬的表空間

2). 給用戶授權(quán)

  1. Oracle數(shù)據(jù)庫(kù)中常用角色

    • connect : 連接角色
    • resource: 開發(fā)者角色
    • dba: 超級(jí)管理員角色
  2. 為用戶授權(quán)語(yǔ)法

-- 給itheima用戶授予dba角色,以便學(xué)習(xí)使用;
grant dba to itheima;
  1. PLSQL中切換用戶
    • Session --> Log off --> Log on

3). 三種用戶權(quán)限詳解

1. CONNECTION 角色:

是授權(quán)最終用戶的典型權(quán)限最基本的權(quán)限

  1. ALTER SESSION --修改會(huì)話
  2. CREATE CLUSTER --建立聚簇
  3. CREATE DATABASE LINK --建立數(shù)據(jù)庫(kù)鏈接
  4. CREATE SEQUENCE --建立序列
  5. CREATE SESSION --建立會(huì)話
  6. CREATE SYNONYM --建立同義詞
  7. CREATE VIEW --建立視圖

2. RESOURCE 角色

授予開發(fā)人員的角色

  1. CREATE CLUSTER --建立聚簇
  2. CREATE PROCEDURE --建立過程
  3. CREATE SEQUENCE --建立序列
  4. CREATE TABLE --建表
  5. CREATE TRIGGER --建立觸發(fā)器
  6. CREATE TYPE --建立類型

3. DBA 角色

擁有全部特權(quán),是系統(tǒng)最高權(quán)限,只有DBA才可以創(chuàng)建數(shù)據(jù)庫(kù)結(jié)構(gòu),并且系統(tǒng)權(quán)限也需要DBA授出,且DBA用戶可以操作全體用戶的任意表,包括刪除;DBA權(quán)限同樣需要被賦予,賦予的方式是進(jìn)入system下,給指定的用戶賦予dba權(quán)限,否則無(wú)法正常登陸!

三、Oracle常用數(shù)據(jù)類型介紹

數(shù)據(jù)類型 描述
varchar 字符串(被淘汰)
varchar2 字符串(推薦、常用)
NUMBER NUMBER(n)表示一個(gè)整數(shù),長(zhǎng)度為n;NUMBER(m,n)表示一個(gè)小數(shù),總長(zhǎng)度為m,小數(shù)位數(shù)是n,整數(shù)位數(shù)是m-n
DATA 日期
CLOB 大對(duì)象,大數(shù)據(jù)文本類型,可存4G
BLOB 大對(duì)象,二進(jìn)制數(shù)據(jù),可存4G

四、 PLSQL客戶端工具中文亂碼問題的解決

  1. 查看服務(wù)器端編碼
select userenv('language') from dual;

-- 我實(shí)際查到的結(jié)果為: AMERICAN_AMERICA.ZHS16GBK
  1. 執(zhí)行語(yǔ)句
select * from V$NLS_PARAMETERS

查看第一行中PARAMETER項(xiàng)中為NLS_LANGUAGE 對(duì)應(yīng)的VALUE項(xiàng)中是否和第一步得到的值一樣。如果不是,需要設(shè)置環(huán)境變量.否則PLSQL客戶端使用的編碼和服務(wù)器端編碼不一致,插入中文時(shí)就會(huì)出現(xiàn)亂碼.

3.設(shè)置環(huán)境變量

計(jì)算機(jī)->屬性->高級(jí)系統(tǒng)設(shè)置->環(huán)境變量->新建

設(shè)置變量名: NLS_LANG
變量值:第1步查到的值,我的是: AMERICAN_AMERICA.ZHS16GBK
  1. 重新啟動(dòng)PLSQL,插入數(shù)據(jù)正常
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容