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

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

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

在平常的項目中,我們會需要批量操作數(shù)據(jù)庫的時候,例如:批量修改,批量插入,那我們不應該使用 for 循環(huán)去操作數(shù)據(jù)庫,這樣會導致我們反復與數(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

當我們在備份 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 對應的實體類屬性
</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>

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

相關文章

  • 使用mysql的disctinct group by查詢不重復記錄

    使用mysql的disctinct group by查詢不重復記錄

    非常不錯的方法,用mysql的group by解決不重復記錄的問題,看來我需要學習的地方太多了
    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)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    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)了問題,下面這篇文章主要給大家介紹了關于MySQL數(shù)據(jù)存儲路徑修改的超詳細教程,需要的朋友可以參考下
    2023-03-03
  • MySQL故障排查與運維案例詳解

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

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

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

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

    Mysql表的約束超詳細講解

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

最新評論

丰都县| 塔城市| 丰原市| 吉首市| 桓台县| 金川县| 西宁市| 达拉特旗| 佛山市| 涿鹿县| 扬州市| 长垣县| 美姑县| 乌苏市| 拜城县| 鸡东县| 阜新市| 股票| 微山县| 海口市| 黄浦区| 通河县| 肥乡县| 乐都县| 太原市| 台北市| 佛教| 甘孜县| 长葛市| 泰来县| 故城县| 日土县| 河源市| 大丰市| 司法| 峨眉山市| 三原县| 团风县| 大化| 民县| 香港|