最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL中存儲(chǔ)過(guò)程(procedure)的使用及說(shuō)明

 更新時(shí)間:2025年11月13日 10:47:40   作者:未來(lái)的資深Java架構(gòu)師  
存儲(chǔ)過(guò)程是預(yù)先定義的SQL語(yǔ)句集合,可在數(shù)據(jù)庫(kù)中重復(fù)調(diào)用,它們提供事務(wù)性、高效性和安全性,MySQL和Java中均可創(chuàng)建和調(diào)用存儲(chǔ)過(guò)程,示例展示了如何在MySQL中創(chuàng)建和調(diào)用存儲(chǔ)過(guò)程,以及如何在Java中實(shí)現(xiàn)存儲(chǔ)過(guò)程的調(diào)用

概念

存儲(chǔ)過(guò)程:

在數(shù)據(jù)庫(kù)中預(yù)先定義好一組SQL語(yǔ)句,可以被程序反復(fù)調(diào)用。

優(yōu)點(diǎn):

  • 存儲(chǔ)過(guò)程將一組復(fù)雜的SQL語(yǔ)句組成一個(gè)原子操作,保證數(shù)據(jù)一致性。
  • 批處理操作,保證操作高效性。
  • 通過(guò)存儲(chǔ)過(guò)程可以限制用戶對(duì)數(shù)據(jù)庫(kù)中敏感數(shù)據(jù)訪問(wèn)。提高系統(tǒng)安全性。

示例1

1、MySQL創(chuàng)建存儲(chǔ)過(guò)程。

DELIMITER $$
CREATE PROCEDURE GetCustomerDetails(IN haha INT)
BEGIN
    SELECT * FROM customer WHERE id = haha;
END $$
DELIMITER ;

2、MySQL調(diào)用存儲(chǔ)過(guò)程。

call GetCustomerDetails(16);

3、Java調(diào)用存儲(chǔ)過(guò)程。

<mapper namespace="com.example.MyMapper">
    <select id="getCustomerDetails" statementType="CALLABLE">
        {call GetCustomerDetails(#{customerId, mode=IN, jdbcType=INTEGER})}
    </select>

    <update id="updateCustomerDetails" statementType="CALLABLE">
        {call UpdateCustomerDetails(
            #{customerId, mode=IN, jdbcType=INTEGER},
            #{firstName, mode=IN, jdbcType=VARCHAR},
            #{lastName, mode=IN, jdbcType=VARCHAR}
        )}
    </update>
</mapper>

示例2

用存儲(chǔ)過(guò)程來(lái)實(shí)現(xiàn)往一個(gè)表里持續(xù)插入數(shù)據(jù)的操作。

-- 創(chuàng)建存儲(chǔ)過(guò)程
DELIMITER $$ #重新定義結(jié)束符
CREATE PROCEDURE person_procedure ( IN minNum INT, IN maxNum INT ) 
BEGIN
	DECLARE i INT DEFAULT minNum; #設(shè)置i初始值為minNum
	WHILE i <= maxNum DO
		INSERT INTO person (id,`name`,age,address) VALUES (i,concat( 'cve-', i, '' ),i,concat( '地址-', i, '' ));
		SET i = i + 1;
	END WHILE;
	SELECT CONCAT(i, ' rows inserted.') AS Result; #打印一個(gè)輸出
END $$
DELIMITER; #重新定義結(jié)束符
-- MySQL調(diào)用存儲(chǔ)過(guò)程
call person_procedure(1,10);

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一篇文章學(xué)會(huì)MySQL基本查詢和運(yùn)算符

    一篇文章學(xué)會(huì)MySQL基本查詢和運(yùn)算符

    在MySQL數(shù)據(jù)庫(kù)操作中,運(yùn)算符扮演著較為重要的角色,連接表達(dá)式中的各個(gè)操作數(shù),其作用是用來(lái)指明對(duì)操作數(shù)所進(jìn)行的運(yùn)算,下面這篇文章主要給大家介紹了關(guān)于MySQL基本查詢和運(yùn)算符的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • MySQL數(shù)據(jù)庫(kù)統(tǒng)計(jì)函數(shù)COUNT的使用及說(shuō)明

    MySQL數(shù)據(jù)庫(kù)統(tǒng)計(jì)函數(shù)COUNT的使用及說(shuō)明

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)統(tǒng)計(jì)函數(shù)COUNT的使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • MySQL中的REPLACE?INTO語(yǔ)法詳解

    MySQL中的REPLACE?INTO語(yǔ)法詳解

    REPLACEINTO是MySQL中的一種特殊語(yǔ)句,用于在插入數(shù)據(jù)時(shí)檢測(cè)是否存在沖突,如果目標(biāo)表中已存在與新插入行的主鍵(PRIMARYKEY)或唯一鍵(UNIQUEKEY)沖突的記錄,則會(huì)刪除舊記錄并插入新記錄
    2025-02-02
  • 基于Mysql的Sequence實(shí)現(xiàn)方法

    基于Mysql的Sequence實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇基于Mysql的Sequence實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-09-09
  • MySQL底層文件的查看和修改方法

    MySQL底層文件的查看和修改方法

    MySQL 底層文件分為文本類(可安全查看/修改)和二進(jìn)制類(禁止手動(dòng)操作),以下按「查看方法、修改方法、風(fēng)險(xiǎn)管控三部分詳細(xì)說(shuō)明,所有操作均以 Linux 環(huán)境為例,需要的朋友可以參考下
    2025-12-12
  • 新裝MySql后登錄出現(xiàn)root帳號(hào)提示mysql ERROR 1045 (28000): Access denied for use的解決辦法

    新裝MySql后登錄出現(xiàn)root帳號(hào)提示mysql ERROR 1045 (28000): Access denied

    這篇文章主要介紹了新裝MySql后登錄出現(xiàn)root帳號(hào)提示mysql ERROR 1045 (28000): Access denied for use的解決辦法,需要的朋友可以參考下
    2017-01-01
  • MySQL高級(jí)開發(fā)中視圖的詳細(xì)教程

    MySQL高級(jí)開發(fā)中視圖的詳細(xì)教程

    對(duì)MySQL數(shù)據(jù)庫(kù)的查詢,除了基本的查詢外,有時(shí)候需要對(duì)查詢的結(jié)果集進(jìn)行處理,下面這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)庫(kù)基本SQL語(yǔ)句教程之高級(jí)操作中視圖的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • mysql enum字段類型的謹(jǐn)慎使用

    mysql enum字段類型的謹(jǐn)慎使用

    本文主要介紹了mysql enum字段類型使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • MySQL 8.0升級(jí)中的字符集陷阱與解決方案

    MySQL 8.0升級(jí)中的字符集陷阱與解決方案

    在企業(yè)數(shù)字化轉(zhuǎn)型的浪潮中,數(shù)據(jù)庫(kù)系統(tǒng)的升級(jí)換代是必經(jīng)之路,MySQL 8.0作為重要的里程碑版本,帶來(lái)了諸多性能提升和新特性,但同時(shí)也埋下了一些技術(shù)地雷:字符集排序規(guī)則的變化,本文將基于一個(gè)真實(shí)案例,深度剖析MySQL 8.0字符集排序規(guī)則沖突問(wèn)題的根本原因
    2026-01-01
  • mysql中point的使用詳解

    mysql中point的使用詳解

    MySQL的point函數(shù)是一個(gè)用于處理空間坐標(biāo)系的函數(shù),它可以將兩個(gè)數(shù)值作為參數(shù),返回一個(gè)Point對(duì)象,這篇文章主要介紹了mysql中point的使用,需要的朋友可以參考下
    2023-07-07

最新評(píng)論

麻栗坡县| 郴州市| 布尔津县| 绩溪县| 通许县| 昭平县| 平顺县| 晴隆县| 南汇区| 东平县| 东丰县| 衡东县| 仙桃市| 松桃| 桃园县| 陆良县| 石台县| 兴化市| 儋州市| 大荔县| 广灵县| 新昌县| 体育| 页游| 商河县| 百色市| 安阳县| 凤冈县| 陆丰市| 萨嘎县| 汽车| 芜湖市| 济南市| 无棣县| 仙桃市| 镇康县| 比如县| 建始县| 正蓝旗| 安泽县| 柯坪县|