儲存過程
1 create proc 儲存過程名稱2 as
3 begin
4 set nocount on;
5 --sql語句
6 end
7 go
變數
--1、變數名以@開頭 select,setdeclare @num int
set @num=1
print @num
declare @num1 int =1
print @num1
declare @id int
select @id from result where name=''
事務
begin transaction --開啟乙個事務declare @error
int=0 --定義變數 賦值
--賣家,賣加的賬戶要加錢
update accountcompany
set useraccount = useraccount+9000
where id=2
set @error=@error+@@error --error全域性變數,獲取錯誤的編號
--買家,賬戶扣錢
update accountcompany
set useraccount = useraccount-9000
where id=1
set @error=@error+@@error
if @error<>0
begin
rollback transaction --事務進行回滾
endelse
begin
commit transaction --提交
endselect * from accountcompany
觸發器優點:
1、觸發器是自動的,當對表中的資料做了任何修改之後立即被啟用
2、觸發器可以通過資料庫中相關表進行層疊修改
3、觸發器可以強制限制,這些限制比用check約束所定義的更複雜,與check約束不同的是,觸發器可以引用其他表中的列
觸發器的作用
觸發器的主要作用就是其能夠實現由主鍵和外來鍵所不能保證的複雜參照完整性和資料的一致性,它能夠對資料庫中的相關表進行級聯修改,提高比check約束更複雜的的資料完整性,並自定義錯誤訊息。觸發器的主要作用主要有以下接個方面:
強制資料庫間的引用完整性
級聯修改資料庫中所有相關的表,自動觸發其它與之相關的操作
跟蹤變化,撤銷或回滾違法操作,防止非法修改資料
返回自定義的錯誤訊息,約束無法返回資訊,而觸發器可以
觸發器可以呼叫更多的儲存過程
觸發器: 在對資料庫資料進行操作(增加(insert)、修改(update)、刪除(delete))後,可以自動執行的操作
觸發器分為兩類:instead of 觸發器 ,after(for)觸發器。
instead of 觸發器:在資料更新到資料庫之前執行的操作
after(for)觸發器:在資料更新到資料後再執行的操作
資料臨時載體:inserted和deleted
inserted:儲存操作中新增的或者更新的資料
deleted:儲存操作中刪除的資料
--insert操作instead of 觸發器 在資料更新到資料庫之前執行的操作create trigger 觸發器名稱
on 表名
instead of insert --操作(增刪改)
asbegin
--需要執行的業務
end--insert操作after 觸發器 在資料更新到資料後在執行的操作
create trigger 觸發器名稱
on 表明
after insert
asbegin
--需要執行的業務
end--go的意思是分批處理語句
自定義函式
使用者自定義函式的型別:
1、標量值函式(返回乙個標量值)
2、**值函式(內聯**值函式、多語句錶值函式,返回乙個結果集即返回多個值)
特點:內聯**值函式支援在where子句中使用引數
--標量值函式gocreate function funname
(@strname nvarchar(50))
returns bit
as begin
declare @len bit
if(len(@strname)>1)
begin
set @len=0
endelse
begin
set @len=1
end return @len
endgo
select dbo.funname('張')
--內聯**值函式gocreate function fun1 (@id int)
returns table --返回乙個表
as return select * from lemon..man where id=@id;
goselect * from fun1(2)
--多語句錶值函式gocreate function fun2
()returns @tablename table(strname nvarchar)
as begin
insert @tablename select strname from @tablename
return
end
Python操作Access資料庫基本操作步驟分析
我們在這篇文章中公分了五個步驟詳細分析了python操作access資料庫的相關方法,希望可以給又需要的朋友們帶來一些幫助。ad python程式語言的出現,帶給開發人員非常大的好處。我們可以利用這樣一款功能強大的物件導向開源語言來輕鬆的實現許多特定功能需求。比如python操作access資料庫的...
Python基礎 SQLite資料庫基本操作
sqlite資料庫的官網 有很多管理資料庫的工具,官方使用命令列進行管理,感覺太麻煩,使用db browser進行管理資料庫,附上官網 開啟後還是中文的,驚喜 安裝庫 pysqlite3 在進行對資料庫的操作之前,首先要使用函式connect開啟資料庫 通過物件的execute方法進行資料庫的各種操...
SQL Server 資料庫基本記錄(二)
登入名 用於連線到 sql server 伺服器 不一定能對資料庫內容執行操作 資料庫使用者名稱 建立登入名和為使用者賦予操作許可權 create login 登入名 with password 密碼 複製 create user 資料庫使用者 for login 登入名 複製 grant 操作許可...