oracle初步使用

2021-10-09 20:29:18 字數 4385 閱讀 7996

三、初始使用

四、更多

oracle資料庫在傳統行業應用較多,這裡介紹oracle的初步使用。

2.2 安裝

這裡為了快速學習,直接在docker中oracle。安裝步驟如下:

拉取oracle映象

安裝執行oracle

進入docker oracle 容器

docker exec -it oracle11 bash
配置oracle環境變數

切換為root身份,調整/etc/profile配置

#切換為root身份,密碼預設為: helowin

su root

#修改profile

vim /etc/profile

/etc/profile調整內容如下:

#這裡oracle_sid=helowin的helowin,據說在製作映象時設定的資料庫sid為helowin,自行修改調整地方較多,待考證

export oracle_sid=helowin

export path=

$oracle_home/bin:$path

啟用配置

source /etc/profile

連線到oracle

進行oracle命令列:

sqlplus /nolog
連線oracle,格式如下:

conn 使用者名稱/密碼 [ as sysdba]
初次登入如:

conn / as sysdba

2.3 建立新使用者

建立新使用者,這裡以建立使用者名為school_user和密碼為xx為例。步驟如下:

先進入oracle

sqlplus /nolog

sqlplus /nolog

建立使用者

create user school_user identified by xx;
給新使用者賦許可權

grant connect,resource,dba to school_user;
使用新使用者登入

conn school_user/xx as sysdba

這裡以剛建立使用者school_user為賬號,建立表stu及常規sql操作為例

3.1 建立表

oracle建表與mysql有些不同。

-- 建立表stu

create

table school_user.stu (

id int(11

)primary

key,

novarchar(30

)default'',

name varchar(60

)default'',

create_user varchar(50

)default'',

create_time timestamp

default

current_timestamp

, update_user varchar(50

)default'',

update_time date

default

null);

-- 建立備註

comment

ontable school_user.stu is

'學生表'

;comment

oncolumn school_user.stu.id is

'使用者id'

;comment

oncolumn school_user.stu.

nois

'學號'

;comment

oncolumn school_user.stu.name is

'使用者名稱'

;comment

oncolumn school_user.stu.create_user is

'建立人'

;comment

oncolumn school_user.stu.create_time is

'建立時間'

;comment

oncolumn school_user.stu.update_user is

'更新人'

;comment

oncolumn school_user.stu.update_time is

'更新時間'

;-- 建立序列,初始為1,每次增1,不限制最大值,不迴圈,沒有快取

create sequence stu_seq increment by

1start

with

1 nomaxvalue nocycle nocache ;

-- 建立觸發器,用於主鍵自增

create

trigger stu_id_trigger before

insert

on stu for each row

when

( new.id is

null

)begin

select stu_seq.nextval into:new.id from dual;

end;

上面建立的序列,可以直接獲取,如下:

select stu_seq.nextval from dual;
3.2 常規操作

查詢

-- 查詢

select

*from stu;

新增(其它語句類似)

-- 新建

insert

into stu(id,

no, name)

values(13

,'013',)

;insert

into stu(

no, name)

values

('002',)

;insert

into stu(

no, name, update_time)

values

('002'

,, sysdate)

;-- 提交,當update、delete、insert時,需要單獨執行提交命令commit,而create、drop不需要,其隱含了提交操作

commit

;

這裡特別注意,當update、delete、insert時,需要單獨執行提交命令commit,而create、drop不需要,其隱含了提交操作。

3.3 非表操作

oracle中操作,除了目標表外,還有些沒有表的操作,如檢視當前時間,這裡可以使用dual當目標表,如:

-- 檢視當前使用者

select

user

from dual;

-- 查詢當前時間

select sysdate from dual;

-- 時間轉字串

select sysdate, to_char(sysdate,

'yyyy-mm-dd hh24:mm:ss'

)from dual;

-- 字串轉時間

select to_date(

'2020-09-25 04:09:48'

,'yyyy-mm-dd hh24:mi:ss'

)from dual;

-- 字串相連

select

'hello'

||' world'

from dual;

oracle區別於mysql,使用中有不少不同之外,下面列舉部分:

1、邏輯結構為:資料庫下可建立表空間,表空間下的為 使用者.表名 ,而mysql為:使用者下的  資料庫.資料表

2、建立表和字段時不能指定注釋,需要單獨使用語句 comment on table 或 comment on column單獨指定注釋

3、建立表時表主鍵不能指定為自增,需要單獨使用序列和觸發器實現

oracle初步訪問

伺服器端 安裝了oracle資料庫伺服器,並配置相關資訊 客戶端 訪問oracle軟體,根據 url,賬戶遠端登入 oracle 資料庫伺服器 a.sqlplus 命令列的資料庫工具 b.sql developer 圖形介面的工具 a.本地 oracle訪問 sqlplus as sysdba 以資...

初步了解oracle

在oracle10g 11g中預設scott被鎖定。a 啟動兩個服務 listener service b 開始 執行 sqlplus或 sqlplusw a conn connect scott tiger system orcl sys orcl as sysdba b 解鎖 鎖定 alter ...

mysql5 7初步使用 MySQL使用初步知識

一 建立資料庫 create database database name php中建立資料庫的兩種方法 mysql create db mysql query conn my 一 建立資料庫 create database database name php中建立資料庫的兩種方法 mysql cr...