首页
/
每日頭條
/
科技
/
mysql單引号雙引号
mysql單引号雙引号
更新时间:2025-06-17 16:50:36
前言

将數據從一張表遷移到另外一張表的過程中,通過mysql的concat方法批量生成sql時遇到了一個問題,即進行UPDATE更新操作時如果原表中的字段中包含單引号'或者雙引号",那麼就會生成不正确的update語句。

原因當然很簡單因為update table set xxx = 'content'時content一般由英文單引号'或者雙引号"包裹起來,使用單引号較多。

如果content中包含單引号'時我們需要對單引号'進行轉義或者将content用雙引号括起來,這樣雙引号"裡面的單引号'就會被視為普通的字符,同理如果content中包含雙引号"那麼我們就可以換成單引号括起來content,這樣雙引号"就會被視為普通字符。但是如果content中既包含單引号'又包含雙引号",這時我們就不得不對content中的内容進行轉義了。

實踐

學生表student中有以下四條數據,現在要把student表中的四條數據按照id更新到用戶表user當中,user表的結構同student一樣。

mysql單引号雙引号(當遇到字段中有單引号或者雙引号時出錯)1

1、内容中含有單引号

有單引号的可以用雙引号括起來

select concat("update user set name = '",name,"' where id = ",id,";") from student where id = 1;

2、内容中含有雙引号

有雙引号的可以用單引号括起來

select concat("update user set name = \"",name,"\" where id = ",id,";") from student where id = 3;

3、内容中包含雙引号和單引号

需使用replace函數将content中的單引号和雙引号替換為轉義的形式。

函數介紹:replace(object,search,replace),把object對象中出現的的search全部替換成replace。

select concat("update user set name = '",replace(replace(name,"'","\\\'"),"\"","\\\""),"' where id = ",id,";") from student where id = 2;  

對student整表應用以下sql

select concat("update user set name = '",replace(replace(name,"'","\\\'"),"\"","\\\""),"' where id = ",id,";") from student;

得到的結果是:

update user set name = '小明\"' where id = 1; update user set name = '\'翎\"野' where id = 2; update user set name = '\'小王' where id = 3; update user set name = '小李' where id = 4;

我是「翎野君」,感謝各位朋友的:點贊收藏評論,我們下期見。 ​​

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
在ps中怎樣利用套索工具摳圖
在ps中怎樣利用套索工具摳圖
對于不同的圖像,在PS中有不同的摳圖方法!有時候摳一張圖要用幾種方法相結合。對于摳取那些邊緣不規則,背景複雜的圖,你會用什麼方法呢?通道、鋼筆工具、快速選擇工具還是......。其實,沒有這麼複雜。用自動套索工具就可以了,特别适合小白喲!那...
2025-06-17
花式表白程序代碼
花式表白程序代碼
之戀表白代碼,直接上源碼varcanvas=document.getElementsByTagName(‘canvas’)[0];varcontext=canvas.getContext(‘2d’);vara=context;varb=do...
2025-06-17
會議系統的數據有哪些
會議系統的數據有哪些
硬件視頻會議系統由以下設備組成:1、視頻會議終端;2、MCU:多點控制單元,多方會議需要此設備,類似于視頻會議服務器;3、外設設備:會議攝像頭、拾音擴聲系統、顯示設備(電視機、投影儀、LED大屏或拼接屏)。硬件視頻會議系統搭建在局域網内或虛...
2025-06-17
銀聯閃付普及率
銀聯閃付普及率
1月23日,中國銀聯發布了《2018移動支付安全大調查分析報告》。報告主要調查并闡述了關于移動支付消費水平,行為習慣,安全習慣及移動支付安全問題,并對職業人群的支付行為做了分析。而報告中描述國内移動支付在二維碼支付盛行的當下,關于手機閃付的...
2025-06-17
手機桌面布置方法
手機桌面布置方法
手機桌面布置方法?打開手機,在手機桌面中,找到【設置】功能菜單,點擊進入;,下面我們就來說一說關于手機桌面布置方法?我們一起去了解并探讨一下這個問題吧!手機桌面布置方法打開手機,在手機桌面中,找到【設置】功能菜單,點擊進入;在設置頁面中,向...
2025-06-17
Copyright 2023-2025 - www.tftnews.com All Rights Reserved