SQL 語句執行批量替換操作

2021-06-06 02:21:08 字數 1252 閱讀 9858

use test_db

goupdate tb_test set lastname=replace(lastname,'k','g')

將『2012.04.05』型別的日期改為『2012-04-05』

update device_info set 檢定有效期=replace(cast(檢定有效期 as varchar(8000)) ,'.','-')

方法一:

這種是最常用的,因為很多大段的內容都使用text ntext等資料型別,而我們通常也是替換裡面的內容,varchar和nvarchar型別是支援replace,所以如果你的text不超過8000可以先轉換成前面兩種型別再使用replace,替換text ntext 資料型別欄位的語句。

複製**如下:

update 表名 set 欄位名=replace(cast(與前面一樣的欄位名 as varchar(8000)) ,』原本內容』,'想要替換成什麼』)

方法二:

替換其他資料型別欄位的語句,實際應用中不常見,複製** **如下:

update [表名] set 欄位名 = replace(與前面一樣的欄位名,』原本內容』,'想要替換成什麼』)

需要補充的幾點:

1.如何批量替換ntext欄位裡面的資料,問題描述:我想把資料庫中news表中的字段content中的一些字元批量替換。我的content欄位是ntext型別的。我想替換的字段是content欄位,我想把裡面的www.jb51.net替換成替換方法是:

以下是**片段:

update news 

set content = replace(cast(content as varchar(8000)), 

『www.jb51.net』, 

『2。如何批量替換varchar和nvarchar型別

varchar和nvarchar型別是支援replace,所以如果你的text/ntext不超過8000/4000可以先轉換成前面兩種型別再使用replace。

update 表名

set text型別欄位名=replace(convert(varchar(8000),text型別欄位名),』要替換的字元』,'替換成的值』)

update 表名

set ntext型別欄位名=replace(convert(nvarchar(4000),ntext型別欄位名),』要替換的字元』,'替換成的值』)

不過上面的方法,對於text或ntext欄位超過8000的時候就不能用了,一般可以用asp程式來實現,先讀取內容替換後,儲存到資料庫中

Oracle批量執行SQL語句

1.在plsql之類的工具中把語句塊寫在begin end之間,如 begin insert into table values insert into table values insert into table values insert into table values end 記住在end...

Oracle批量執行SQL語句

1.在plsql之類的工具中把語句塊寫在begin end之間,如 begin insert into table values insert into table values insert into table values insert into table values end 記住在end...

Java中批量執行sql語句

在我們實際專案開發過程中,可能有的功能在後台需要執行幾條sql語句甚至需要批量的執行一些sql語句,如果是迴圈一條一條執行,我想大家都知道這樣做的效率特別低,尤其是批量sql時,但是如果我們先迴圈把整個的拼成乙個以 分割開的sql,然後執行這樣的效率提高了不少。string idsarray add...