MySQL和SQL Server数据库基本语句总结(二)
接著上面的總結(jié),這一篇主要是MySQL剩下的內(nèi)容(我用的不多,記下來(lái),防止自己忘記)
1.關(guān)于觸發(fā)器
? 解釋?? 類(lèi)似于C++中的事件觸發(fā),在一個(gè)事件發(fā)生后會(huì)執(zhí)行里面的代碼 (before /after)
? 語(yǔ)法
單行
? create trigger ___ after update on ___?
? for each row? //對(duì)于每行監(jiān)聽(tīng)
?? ___(可執(zhí)行代碼 增刪改查)
?? ;??
多行
?delimiter $$? //改變結(jié)束字符
? create trigger ___ after update on ___
? for each row
???begin
? //執(zhí)行語(yǔ)句
?? end
? ?$$
? delimiter ;
上面是主要語(yǔ)法,還有 old和new的使用 old.? new.? 分別是事件發(fā)生之前的表里的數(shù)據(jù) 和發(fā)生之后的表里的數(shù)據(jù)?
2.關(guān)于建立視圖
我的理解 視圖就是一個(gè)虛擬的表(一般設(shè)置視圖中的數(shù)據(jù)改變 是不會(huì)改變?cè)淼?#xff0c;但是可以改變)? 視圖就是將能給出的數(shù)據(jù)給別人看 隱藏不能給出的
//視圖可以和表一樣正常操作
主要語(yǔ)法
create view ____
as
{一個(gè)SELECT 語(yǔ)句};
drop view ___;
視圖會(huì)占用內(nèi)存空間 不用的話(huà)要?jiǎng)h除視圖
3.關(guān)于事務(wù)處理
這是個(gè)高級(jí)的東西,作為新手的我,基本不怎么用,但是這的確是個(gè)NB的東西,但是函數(shù)用的非常簡(jiǎn)單
? 基本特征? 1.原子性 2.一致性 3.隔離性 4. 持久性
事務(wù)就相當(dāng)于給這一行的數(shù)據(jù)上個(gè)鎖,此時(shí)只能一個(gè)人操作,而且未提交的時(shí)候其他的客戶(hù)看表的數(shù)據(jù)不會(huì)發(fā)生變化,一旦出現(xiàn)錯(cuò)誤會(huì)回到之前的狀態(tài)。 (使用INNODB的事務(wù)處理機(jī)制)
語(yǔ)法
1.set autocommit = (1. 開(kāi)啟 0 .關(guān)閉)
2.停止自動(dòng)提交??? 后面 提交? commit?否則 執(zhí)行 回滾操作 rollback?
3. 換種方式 start transaction? 開(kāi)啟事務(wù) (主要的還是在PHP中使用)
4.其他
? 建立變量
? 兩種方式
? 1. select 1,2,3 into @a,@b,@c;
? 2. select ___ from ___ where into @tmp? //注意 只能將一個(gè)數(shù)據(jù)放入 多的話(huà) 只會(huì)放入最后一行的數(shù)據(jù)
??3.定義局部變量
??? 語(yǔ)法
??? declare i int default?0;??? 類(lèi)似 數(shù)據(jù)的定義? 加上DECLARE 局部變量在使用的時(shí)候不要加@
? 建立函數(shù)
??在數(shù)據(jù)庫(kù)中建立函數(shù),用的不多
? 語(yǔ)法
? delimiter $$
? create function sayhello() returns varchar(20)
? begin
? return "1111111111111";
? end
??$$
??delimiter ;
?舉個(gè)都使用的例子
? create function sum1() returns int
? begin
? set @i=1; //建立全局變量
??set @sum=0;?
? while @i<=10 do? //使用循環(huán)
????????? set @sum=@sum+@i;
????????? set @i=@i+1;
?? end while; //結(jié)束循環(huán)? 這里 多層循環(huán)使用時(shí)必須給每個(gè)循環(huán) 定義一個(gè)名字 然后 結(jié)束
? returm @sum;
? end
?當(dāng)然這上面僅僅是在MySQL中的一些簡(jiǎn)單用法的總結(jié),后面是PHP中的使用 。
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/fightfuture/p/3469849.html
總結(jié)
以上是生活随笔為你收集整理的MySQL和SQL Server数据库基本语句总结(二)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux不登录用户就关机,Linux无
- 下一篇: 丑陋的程序员