資料庫一些基本概念

2022-05-01 04:33:11 字數 2108 閱讀 8397

發現自己對資料庫的基本概念還是很缺乏,雖然都是比較基本的。很多資料庫功能必須用t-sql語句實現。

(1)儲存過程(stored procedure)

儲存過程是為完成特定的功能而匯集在一起的一組sql 程式語句,經編譯後儲存在資料庫中的sql 程式。舉個例子:

create procedure sum_of_array

@list varchar(100),

@summary int output

asdeclare  @ix int,@pos int,@str varchar(100),@sum int

set @pos=1

set @ix=1

set @sum=0

while (@ix>0)

begin

set @ix=charindex(',',@list,@pos)

if @ix>0

set @str=substring(@list,@pos,@ix-@pos)

else

set @str=substring(@list,@pos,len(@list))

set @str=ltrim(rtrim(@str))

set @sum=@sum+cast(@str as int)

set @pos=@ix+1

end--select @sum

return @sum

go上面例子用於計算乙個字串各個數字的之和,使用時:

declare @sum int

exec sum_of_array @list='1,2,3,4,5',@summary=@sum

輸出15

(2)觸發器(trigger)

觸發器是乙個使用者定義的sql 事務命令的集合。當對乙個表進行插入、更改、刪除時,這組命令就會自動執行。

示例:(建立和刪除乙個觸發器)

create trigger test_delete on dbo.productlistspecial for delete

asinsert into dbo.productlistspecial(moduleid, productid) values(100,100)

goif exists (select name from sysobjects

where name = 'test_delete' and type = 'tr')

drop trigger test_delete

go這個觸發器用於在刪除事件發生時插入一條資料。

(3)使用者自定義函式(udf)

udf是兼具檢視和儲存過程的優點,一組完成特定的功能而匯集在一起的一組sql 程式語句。

示例:create function dbo.test

(@mid int,@nid int)

returns int  as 

begin

return @nid-@mid

end使用時:

select dbo.test(moduleid,productid) as result,moduleid,productid from dbo.productlistspecial

可以看到udf用在表示式中,和select語句中,這是sp所不具有的,類似於view的功能。此外udf具有一下限制,那就是可移植性差。

(4)檢視(view)

檢視看上去同表似乎一模一樣,具有一組命名的字段和資料項,但它其實是乙個虛擬的表,在資料庫中並不實際存。在檢視是由查詢資料庫表產生的,它限制了使用者能看到和修改的資料。由此可見,檢視可以用來控制使用者對資料的訪問,並能簡化資料的顯示,即通過檢視只顯示那些需要的資料資訊。本質上它由一組select sql語句組成的命令。

示例:create view dbo.vtest

asselect dbo.productlistspecial.*

from dbo.productlistspecial

使用時:

select * from vtest

(5)索引(index)

索引是根據指定的資料庫表列建立起來的順序。它提供了快速訪問資料的途徑,並且可監督表的資料,使其索引所指向的列中的資料不重複。

(6)規則(rule)

規則是對資料庫表中資料資訊的限制。它限定的是表的列。

資料庫1 資料庫的一些基本概念

本節引言 本節主要介紹一些資料庫的名稱的一些基本概念,以便大家對資料庫有基本的了解 1.資料庫 與 資料庫管理系統 答 資料庫,簡單理解就是 儲存資料的倉庫 而資料庫管理系統 database management system,dbms 見名知意,就是管理前者的系統,現在dbms有很多,比較通用的...

MySQL資料庫 資料庫的一些基本概念

網路上關於資料庫的配置的文章有很多了,這裡就只記錄一些可能出現的問題 1 安裝完成資料庫之後,需要開啟3306的埠 2 mysql8.0修改密碼的語句和5.0版本的有點不一樣,在網上找的時候得看對了版本 3 遠端登入要記得關閉服務端的防火牆 4 workbench只是乙個視覺化的工具 1 伺服器端 ...

資料庫的一些基本概念(鍵 事務)

注 元組 tuple 是關聯式資料庫中的基本概念,關係是一張表,表中的每行 即資料庫中的每條記錄 就是乙個元組,每列就是乙個屬性。在二維表裡,元組也稱為行。取個例子 字段 卡號 姓名 身份證號 年齡 病人編號 超鍵 卡號 身份證號 病人編號 卡號和身份證號 卡號和病人編號等。候選鍵 卡號 身份證號 ...