程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 向你介紹我的Oracle數據庫學習筆記

向你介紹我的Oracle數據庫學習筆記

編輯:Oracle數據庫基礎

1.SQL命令:

SQL 支持4大類型命令:

數據定義語言(DDL): Create(創建), Alter(更改), Drop(刪除).

數據操縱語言(DML): Select(選擇), Insert(插入), Update(更新), Delete(刪除).

事務控制語言(TCL) : Commit(提交), Rollback(回滾), Savepint(保存點).

數據控制語言(DCL) : Grant(授予), Revoke(回收).

2.操作:

1)數據定義語言:用於改變數據庫結構,包括創建,修改,刪除數據庫對象

創建表(create):

create table person(id int primary key,name varchar(16) not null,passWord int not null, address varchar(20));

更改(alter):

注:add:增加,modify:修改

alter table person add(age int);//增加1個屬性列
alter table person add(age int,weight int);//增加多個屬性列
alter table person modify(age varchar(6));//修改屬性列
alter table person modify(age varchar(6),weight varchar(6));//修改多個屬性列

刪除(drop):

drop table person;

附加:

描述表的屬性列:describe person;

2).數據操縱語言: 用於檢索,插入和修改數據庫信息

選擇查詢(select):

select * from person;//檢索全部信息
select id,name from person;//檢索部分信息
select distinct name from person;//檢索部分信息,但消去重復行(distinct)
select * from person where id=1;//查詢符合條件的信息
select * from person order by id;//查詢並排序(order by)顯示查詢信息
select * from person where id=1 and sex='man';
select * from person where address='bj' or sex='woman';
select * from person where(address='bj' or sex='woman') or age>20;

Select 語句的總語法:

Select * | {[Distinct] 列名,列名,…… } From TableName
    [Where 條件]
    [Order By 列名,列名,……];

其中用[ ]括起來的表示是可以按自己實際選擇寫或不寫。Order By表示結果要排序,By後指出排序的屬性列名,可單列或多列排序(在前排的基礎上再排序),其後可說明排序方式:DESC為降序,ASC為升序,默認為升序。在select語句中,order by子句必須在所以其他子句之後,作為最後一個子句出現。

插入(Insert):

insert into person(id,name,sex,address)values(1,'toxm','man','bj');//插入一個表的所有列:
insert into person values(1,'toxm','man','bj');//插入一個表的所有列
insert into person(id,name) values(1,'toxm');//選擇性插入表中的列
insert into person select * from user;//插入來自其他表的所有記錄
insert into person select id,name from user;//選擇列插入來自其他表的記錄
insert into person select * from user where sex='man';//按條件插入來自其他表的所有記錄

更新:(Update ):

update person set name='toxm' where id=1;//按條件更新一列或多列
upsate person set name='toxm',address='bj' where id=1;//按條件更新多列
update person set name='toxm;//更新所有行

刪除:(Delete):

delete from person;//刪除表中所有記錄
delete from person where id=1;//按條件刪除表中記錄

3)事務控制語言:

當用戶執行創建,刪除,修改數據庫對象或插入,刪除,修改數據庫表時,用戶所做的數據修改會被保存在數據緩沖區中,此時用戶所做的數據庫修改並沒有真正的修改了數據庫,只有在用執行Commit(提交)命令後才真正的修改了數據庫, 如果想不修改數據庫,則可以執行Rollback(回滾)命令則剛剛執行的修改不會修改數據庫。

如: 當你用Insert 命令插入一條記錄時,此時這條記錄是保存在數據緩沖區中的,並沒有真正保存到數據庫中,數據庫中不會有這條記錄(不信你可以以另一個用戶登陸然後查詢插入的表,會發現無次記錄), 如果你執行了Commit(提交)命令後, 才會將緩沖區的數據保存到數據庫裡, 既真正的修改了數據庫(以另一個用戶登陸可以查詢到插入的記錄), 如果執行Rollback(回滾)命令則會把存在緩沖區中的數據給刪除掉,既用戶的修改作廢(如果執行Commit命令則不能回滾了)。 可以利用Savepoint(保存點)進行選擇性的回滾。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved