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

MySQL中的批量修改、插入操作數(shù)據(jù)庫

 更新時間:2023年09月18日 09:48:41   作者:Asurplus  
在平常的項目中,我們會需要批量操作數(shù)據(jù)庫的時候,例如:批量修改,批量插入,那我們不應(yīng)該使用 for 循環(huán)去操作數(shù)據(jù)庫,這樣會導(dǎo)致我們反復(fù)與數(shù)據(jù)庫發(fā)生連接和斷開連接,影響性能和增加操作時間,所以可以使用SQL 批量修改的方式去操作數(shù)據(jù)庫,感興趣的朋友一起學(xué)習(xí)下吧

在平常的項目中,我們會需要批量操作數(shù)據(jù)庫的時候,例如:批量修改,批量插入,那我們不應(yīng)該使用 for 循環(huán)去操作數(shù)據(jù)庫,這樣會導(dǎo)致我們反復(fù)與數(shù)據(jù)庫發(fā)生連接和斷開連接,影響性能和增加操作時間

所以我們可以使用編寫 SQL 批量修改的方式去操作數(shù)據(jù)庫

1、批量修改

UPDATE check_order_pl_detail
SET remarks =
CASE
        id
        WHEN 1 THEN '備注1'
        WHEN 2 THEN '備注2'
    END,
    retail_unit_price =
CASE
        id
        WHEN 1 THEN 100
        WHEN 2 THEN 200
    END
WHERE
    id IN ( 1, 2 )

我們?nèi)バ薷?check_order_pl_detail 表時,我們需要根據(jù) id 去修改 remarks 和 retail_unit_price ,我們可以采用 CASE WHEN 的方式,去修改數(shù)據(jù)

2、批量插入

INSERT INTO user_info_backup ( `name`, age, sex, log_time) 
SELECT
    `name`,
    age,
    sex,
    DATE_SUB( curdate( ), INTERVAL 1 DAY ) AS log_time
FROM
    user_info

當(dāng)我們在備份 user_info 表的數(shù)據(jù)時,我們需要將 user_info 的數(shù)據(jù)查詢出來,在插入到 user_info_backup 表中

補充:

mysql 批量新增,修改

<strong>批量新增</strong>
<insert id="insertList">
  insert into sea_user (id, username,`time`)
  values
  <foreach collection="list" item="item" index="index" separator=",">
    (replace(uuid(),"-",""), #{item.username}, #{item.time})
  </foreach>
</insert>

注釋

list  傳過來的集合對象

item="item"  "item"?遍歷的集合中的每個對象
---------------------------------------------------------------------------------------------------------
<strong>新增返回主鍵id (useGeneratedKeys="true" keyProperty="id")</strong>
<insert id="insert" parameterType="com.mmall.pojo.Shipping" useGeneratedKeys="true" keyProperty="id">
  insert into mmall_shipping (id, user_id, receiver_name, 
    receiver_phone, receiver_mobile, receiver_province, 
    receiver_city, receiver_district, receiver_address, 
    receiver_zip, create_time, update_time
    )
  values (#{id,jdbcType=INTEGER}, #{userId,jdbcType=INTEGER}, #{receiverName,jdbcType=VARCHAR}, 
    #{receiverPhone,jdbcType=VARCHAR}, #{receiverMobile,jdbcType=VARCHAR}, #{receiverProvince,jdbcType=VARCHAR}, 
    #{receiverCity,jdbcType=VARCHAR}, #{receiverDistrict,jdbcType=VARCHAR}, #{receiverAddress,jdbcType=VARCHAR}, 
    #{receiverZip,jdbcType=VARCHAR}, now(), now()
    )
</insert>
---------------------------------------------------------------------------------------------------------
<strong>批量修改
list  - 傳過來的數(shù)據(jù)集合,使用注解
goods_id 表中數(shù)據(jù)
goodsId 對應(yīng)的實體類屬性
</strong>
<update id="updateBatchStock">
  update
    goods
  set
    goods_stock =
    <foreach collection="list" item="item" index="index" separator=" " open="case goods_id" close="end">
        when #{item.goodsId} then goods_stock - #{item.quantity}
    </foreach>
    ,goods_sales_quantity =
    <foreach collection="list" item="item" index="index" separator=" " open="case goods_id" close="end">
        when #{item.goodsId} then goods_sales_quantity + #{item.quantity}
    </foreach>
    where goods_id in
    <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
        #{item.goodsId}
    </foreach>
</update>

到此這篇關(guān)于MySQL中的批量操作(修改,插入)的文章就介紹到這了,更多相關(guān)MySQL批量修改內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用mysql的disctinct group by查詢不重復(fù)記錄

    使用mysql的disctinct group by查詢不重復(fù)記錄

    非常不錯的方法,用mysql的group by解決不重復(fù)記錄的問題,看來我需要學(xué)習(xí)的地方太多了
    2008-08-08
  • mysql 5.7.11 winx64安裝配置方法圖文教程

    mysql 5.7.11 winx64安裝配置方法圖文教程

    這篇文章主要為大家分享了mysql 5.7.11winx64安裝配置方法圖文教程,感興趣的朋友可以參考一下
    2016-07-07
  • mysql命令提示行連接亂碼的解決

    mysql命令提示行連接亂碼的解決

    今天在dos下連接mysql數(shù)據(jù)庫的時候,出現(xiàn)了亂碼,需要的朋友可以參考下。
    2011-05-05
  • 基于explain性能詳細分析

    基于explain性能詳細分析

    這篇文章主要介紹了基于explain性能詳細分析,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • MySQL數(shù)據(jù)庫定時備份的幾種實現(xiàn)方法

    MySQL數(shù)據(jù)庫定時備份的幾種實現(xiàn)方法

    本文主要介紹了MySQL數(shù)據(jù)庫定時備份的幾種實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • mysql開啟慢查詢(EXPLAIN SQL語句使用介紹)

    mysql開啟慢查詢(EXPLAIN SQL語句使用介紹)

    這篇文章主要介紹了mysql開啟慢查詢 EXPLAIN SQL語句,需要的朋友可以參考下
    2018-01-01
  • MySQL數(shù)據(jù)存儲路徑修改的超詳細教程

    MySQL數(shù)據(jù)存儲路徑修改的超詳細教程

    在生產(chǎn)環(huán)境下,mysql的數(shù)據(jù)、索引都會很大,而mysql的默認存儲路徑是/val/lib/mysql,這就出現(xiàn)了問題,下面這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)存儲路徑修改的超詳細教程,需要的朋友可以參考下
    2023-03-03
  • MySQL故障排查與運維案例詳解

    MySQL故障排查與運維案例詳解

    文章討論了MySQL故障排查與運維案例,涵蓋了連接類、性能類、復(fù)制類、數(shù)據(jù)恢復(fù)類、高可用故障、存儲引擎故障、內(nèi)存問題、安全相關(guān)、備份恢復(fù)、升級問題、配置錯誤等多方面的故障排查和優(yōu)化方案,同時提到了一些關(guān)鍵監(jiān)控指標(biāo)和災(zāi)難恢復(fù)流程,感興趣的朋友跟隨小編一起看看吧
    2026-04-04
  • MySQL的配置文件詳解及實例代碼

    MySQL的配置文件詳解及實例代碼

    MySQL的配置文件是服務(wù)器運行的重要組成部分,用于設(shè)置服務(wù)器操作的各種參數(shù),下面這篇文章主要介紹了MySQL配置文件的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-08-08
  • Mysql表的約束超詳細講解

    Mysql表的約束超詳細講解

    MySQL唯一約束(Unique Key)是指所有記錄中字段的值不能重復(fù)出現(xiàn)。例如,為 id 字段加上唯一性約束后,每條記錄的 id 值都是唯一的,不能出現(xiàn)重復(fù)的情況
    2022-09-09

最新評論

遂昌县| 荃湾区| 霍城县| 淮滨县| 冷水江市| 南平市| 大竹县| 新和县| 驻马店市| 荔浦县| 乐都县| 衡阳市| 八宿县| 淳化县| 南溪县| 永丰县| 大渡口区| 松阳县| 嘉峪关市| 台江县| 大安市| 临洮县| 江永县| 乌什县| 博白县| 肃南| 区。| 宁强县| 郓城县| 农安县| 中方县| 常宁市| 永善县| 尼玛县| 江源县| 濮阳市| 汉中市| 天台县| 绵竹市| 阜宁县| 平邑县|