共計 807 個字符,預(yù)計需要花費(fèi) 3 分鐘才能閱讀完成。
自動寫代碼機(jī)器人,免費(fèi)開通
丸趣 TV 小編給大家分享一下 mysql 游標(biāo)的優(yōu)缺點(diǎn)有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
游標(biāo)介紹
MySQL 的游標(biāo)(cursor)是一個重要的概念,通過查找資料與自己的理解,主要得出以下幾點(diǎn)關(guān)于自己的理解。
有數(shù)據(jù)緩沖的思想:游標(biāo)的設(shè)計是一種數(shù)據(jù)緩沖區(qū)的思想,用來存放 SQL 語句執(zhí)行的結(jié)果。
先有數(shù)據(jù)基礎(chǔ):游標(biāo)是在先從數(shù)據(jù)表中檢索出數(shù)據(jù)之后才能繼續(xù)靈活操作的技術(shù)。
類似于指針:游標(biāo)類似于指向數(shù)據(jù)結(jié)構(gòu)堆棧中的指針,用來 pop 出所指向的數(shù)據(jù),并且只能每次取一個。
游標(biāo)優(yōu)缺點(diǎn):
(1)游標(biāo)的優(yōu)點(diǎn):
因?yàn)橛螛?biāo)是針對行操作的,所以對從數(shù)據(jù)庫中 select 查詢得到的每一行可以進(jìn)行分開的獨(dú)立的相同或不同的操作,是一種分離的思想。可以滿足對某個結(jié)果行進(jìn)行特殊的操作。游標(biāo)與基于游標(biāo)位置的增刪改查能力。MySQL 數(shù)據(jù)庫中沒有專門描述一行的表達(dá)形式,但這是需要的,所以,個人理解的話,我覺得游標(biāo)是在關(guān)系數(shù)據(jù)庫這種面向集合的系統(tǒng)中抽離出來,單獨(dú)針對行進(jìn)行表達(dá)(也可以理解成網(wǎng)上資料說的:游標(biāo)是面向集合與面向行的設(shè)計思想之間的一種橋梁)
(2)游標(biāo)缺點(diǎn)
游標(biāo)的缺點(diǎn)是針對有點(diǎn)而言的,也就是只能一行一行操作,在數(shù)據(jù)量大的情況下,是不適用的,速度過慢。這里有個比喻就是:當(dāng)你去 ATM 存錢是希望一次性存完呢,還是 100 一張一張的存,這里的 100 一張一張存就是游標(biāo)針對行的操作。數(shù)據(jù)庫大部分是面對集合的,業(yè)務(wù)會比較復(fù)雜,而游標(biāo)使用會有死鎖,影響其他的業(yè)務(wù)操作,不可取。當(dāng)數(shù)據(jù)量大時,使用游標(biāo)會造成內(nèi)存不足現(xiàn)象。
以上是“mysql 游標(biāo)的優(yōu)缺點(diǎn)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!
向 AI 問一下細(xì)節(jié)
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!