黑馬57 Oracle基礎 day01

2022-08-20 08:42:11 字數 4696 閱讀 9390

----- 04 建立表空間、建立使用者及使用者授權

--

建立表空間

create

tablespace zsyy

datafile

'c:\zsyy.dbf

'size 100m

autoextend

onnext 10m;

--

刪除表空間

drop

tablespace zsyy;

drop tablespace itheima;

--

- 重新建立表空間

create tablespace bhzsyy --

-bhzsyy 為表空間名稱

datafile '

c:\develop\oracle\datafile\bhzsyy.dbf'--

-datafile 指定表空間對應的資料檔案

size 100m --

-size 後定義的是表空間的初始大小

autoextend on

---autoextend on 自動增長 ,當表空間儲存都佔滿時,自動增長

next 10m; --

-next 後指定的是一次自動增長的大小。

--

刪除表空間

drop tablespace bhzsyy;

--

建立使用者(必須設定密碼,表空間,許可權 才能登陸)

create

user

cgs--

刪除使用者

--drop user cgs cascade;

--設定使用者密碼

identified by

cgs--

設定所屬表空間

default tablespace bhzsyy;

--

若修改某乙個使用者密碼, 修改使用者口令的格式為:

--alter user 使用者名稱 identified by 新密碼

alter

user cgs identified by

123;

--

給使用者授權

--oracle資料庫中常用角色

connect --

連線角色,基本角色

resource --

開發者角色

dba --

超級管理員

--給cgs授權超級管理員

grant dba to

cgs;

--切換到cgs使用者下(session-logoff-all ---> session-logon-cgs)

----- 05 資料型別和表的建立

--

建立乙個person表

create

table

person(

pid

number(20

),pname

varchar2(10

),pbirthday date,

gender

number(1) default

1);

----- 06 修改表結構

--

新增一列

alter

table person add (address varchar2(20

));--

修改列型別

alter

table person modify (address char(10));--

char長度固定

--修改列名稱

alter

table person rename column address to

addr;

--刪除一列

alter

table person drop

column addr;

----- 07 資料的增刪改

--

查詢表中記錄

select

*from

person;

--新增一條記錄

insert

into person (pid, pname) values (1,'小明'

);commit;--

-修改一條姓名記錄

update person set pname='小馬

', pbirthday=to_date((to_char(sysdate, '

yyyy-mm-dd

')), '

yyyy-mm-dd

'), pgender=

2where pid =1;

commit;--

-修改一條性別記錄

update person set pgender =

1where pid =1;

commit;--

-修改一條生日記錄

update person set pbirthday = to_date('

08-21-2003

','mm-dd-yyyy

') where pid =1;

commit;--

-刪除一行記錄

delete

from person where pid=1;

commit;--

新增一行記錄

insert

into person values

(2, '

張三', to_date('

1999-12-22

', '

yyyy-mm-dd

'), 1

);commit;--

新增今天日期時間的一行記錄

insert

into person values

(3,'

李四', sysdate, 1

);commit;--

新增今天日期的一行記錄

insert

into person values

(4,'

王五', to_date((to_char(sysdate, '

yyyy-mm-dd

')), '

yyyy-mm-dd

'), 1

);commit;

---- 插入字串亂碼的解決辦法

--

1.檢視伺服器端編碼

select userenv('

language

') from

dual;

我實際查到的結果為:american_america.zhs16gbk

--2.執行語句 select * from v$nls_parameters

檢視第一行中parameter項中為nls_language 對應的value項中是否和第一步得到的值一樣。

如果不是,需要設定環境變數.

否則plsql客戶端使用的編碼和伺服器端編碼不一致,插入中文時就會出現亂碼.

--3.設定環境變數

計算機->屬性->高階系統設定->環境變數->

新建 設定變數名:nls_lang,變數值:第1步查到的值, 我的是 american_america.zhs16gbk

--4.重新啟動plsql,插入資料正常

---- 三個刪除

--

刪除表中全部記錄

delete

from

person;

--刪除表結構

drop

table

person;

--先刪除表,再次建立表。效果等同於刪除表中全部記錄。

--在資料量大的情況下,尤其在表中帶有索引的情況下,該操作效率高。

--索引可以提供查詢效率,但是會影響增刪改效率。

truncate

table person;

----- 08 序列的使用:

----- 預設從1開始,以此遞增,主要用來給主鍵賦值使用。

----- 序列不真的屬於仁和一張表,但是可以邏輯和表做繫結。

----- dual:虛表,知識為了補全語法,沒有任何意義。

create

sequence s_person;

select s_person.nextval from

dual;

select s_person.currval from dual;

---- [increment by n] 每次增加n(預設增加1)

---- [start with n] 從n開始

---- 最大值/最小值

---- 迴圈/不迴圈

---- ; 快取

--

新增一條需要自增的主鍵記錄

insert

into person (pid, pname) values (s_person.nextval, '小明'

);commit

;select

*from person;

黑馬python基礎班 day07

1 類屬性 在類裡面和方法外面定義的屬性稱為類屬性,類屬性屬於當前類。例項屬性 物件屬性 在init方法裡面定義的屬性稱為例項物件,例項屬性屬於某個物件。class person object 定義類屬性和例項屬性 類屬性 country 中國 skin color yellow def init ...

黑馬程式設計師 ios基礎入門學習 C語言day2

ios培訓.期待與您交流!1.關鍵字 系統保留的一些特殊標示符,具有特定的含義,我們在自定義標示符的時候,不能夠使用關鍵字來定義。c語言一共有32個關鍵字,如何分別 當我們在使用開發環境編寫程式的時候,比如xcode,關鍵字都是暗紅色的,並且關鍵字全部都是小寫的 2.標示符 我們程式設計師自定義的乙...

黑馬程式設計師 ios基礎入門學習 C語言day3

ios培訓.期待與您交流!scanf 只接收變數的位址,通過位址找到變數空間,等待使用者輸入賦值給該變數,輸入完畢回車後,scanf語句 結束,程式繼續執行。scanf可以連續輸入多個變數,變數之間用什麼隔開,則輸入的時候也什麼隔開 scanf中不能寫 n。取餘 兩邊都是整數,餘數的正負性只與左邊的...