搜尋
首頁電腦教學電腦知識解決Oracle中CHAR類型資料中空格問題的方法是什麼?

解決Oracle中CHAR類型資料中空格問題的方法是什麼?

有什麼方法可以將oracle中CHAR類型資料中的空

可以用腳本把CHAR型別欄位全部轉換成VARCHAR2型,同時截斷字串的空格,如下:

declare

begin

for c in (select *

from user_tab_columns t1

where t1.DATA_TYPE = 'CHAR'

) loop

execute immediate 'alter table ' || c.table_name || ' add g_w_' || c.column_name || ' varchar2(' || c.char_length || ')';

execute immediate 'update ' || c.table_name || ' set g_w_' || c.column_name || ' = ' || c.column_name;

execute immediate 'update ' || c.table_name || ' set ' || c.column_name || ' = null';

execute immediate 'alter table ' || c.table_name || ' modify ' || c.column_name || ' varchar2(' || c.char_length || ')';

execute immediate 'update ' || c.table_name || ' set ' || c.column_name || ' = trim(g_w_' || c.column_name || ')';

execute immediate 'alter table ' || c.table_name || ' drop column g_w_' || c.column_name;

end loop;

end;

如何移除Oracle庫表結構中的類別空格字元

1.首先是去除空格在進行比較(例如,把姓名中的所有空格去除):

Update table_name set xm=replace(xm , ' ') ;

如果要尋找哪些記錄含有' ',可用相關的語句來尋找。

然後可進行比較。

2.但是我們可能會發現,有些名字中間或末尾還有類似空格的字符沒被去掉,但它們顯然已經不是一般的空格了,那麼懷疑是Tab健作怪。於是參考網路上說的去掉TAB鍵的辦法來處理,用chr(9)來取代空白鍵(TAB鍵的ASCII值為9)。先取一條有類別空格字元的記錄來做實驗:

SELECT replace(xm, chr(9) ) from table_name where;

用這個辦法會去掉一些真正的Tab鍵空格,然後採取批次更新的辦法。

3.但我遇到的狀況沒有這麼幸運,沒能去掉類別空白鍵。怎麼辦呢?我決定嘗試先取得這個類別空格鍵的ASCII碼值,然後再用chr(ASCII碼值)的方法來處理。

①.取得含類空格鍵整個字串的長度 length(),從而確定出類別空格鍵在字串中的起始位置、類別空格鍵的長度。

②.出類別空白鍵的ASCII碼值:ascii(substr(xm,n,m)); n為類別空白鍵的起始位置;m為長度。

③.SELECT replace(xm, chr(第②步得的ASCII碼值) ) from table_name where;

問題得以解決。但我發現,上述第②步得的ASCII碼值為41377,這應該是一個漢字的ASCII碼值,看起來又像空格,於是我懷疑,會不會是中文狀態下的空格鍵、TAB鍵?嘗試之後發現不是。我又懷疑,是不是全角、半角的差別?因為我們一般輸入字符,是在半角下輸入的。我按照第一步「1.首先是去除空格在進行比較…」嘗試,輸入全角下的空格,進行查找,結果驚喜出現,原來所有未剔除掉的類空格,是全角狀態下輸入的空格,並接證實了全角下輸入的空格,其ASCII碼值為41377。

以上是解決Oracle中CHAR類型資料中空格問題的方法是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:Excel办公网。如有侵權,請聯絡admin@php.cn刪除
修復'先鋒的這種構建不合規”錯誤 -  Minitool修復'先鋒的這種構建不合規”錯誤 - MinitoolApr 15, 2025 am 12:50 AM

在嘗試在Windows 11上啟動Valorts時,您可能會遇到“ Vanguard的這種構建不合規”問題。為什麼出現錯誤消息?如何擺脫錯誤消息?來自PHP.CN的這篇文章提供了詳細信息。

如何在Windows 10/11上下載RTX 4050驅動程序?如何在Windows 10/11上下載RTX 4050驅動程序?Apr 15, 2025 am 12:49 AM

NVIDIA GEFORCE RTX 40系列GPU對您來說可能不是新事物。與其他頂級圖形卡相比,您中的許多人可能會以可接受的價格更加關注中端主流RTX 4050。閱讀PHP.CN網站的本指南以獲取D

KB2267602無法安裝:這是解決方法!KB2267602無法安裝:這是解決方法!Apr 15, 2025 am 12:48 AM

KB2267602是Windows Defender的保護或定義更新,旨在修復Windows中的漏洞和威脅。一些用戶報告說他們無法安裝KB2267602。這篇來自PHP.CN的帖子介紹瞭如何修復“ KB2267602 FAI

在Windows 11中重新安裝預安裝軟件的兩種方法在Windows 11中重新安裝預安裝軟件的兩種方法Apr 15, 2025 am 12:47 AM

如果需要這樣做,您知道如何重新安裝Windows 11中的預安裝軟件嗎?在這篇文章中,我們將介紹兩種簡單的方法。此外,如果要在Windows計算機上恢復文件,則可以嘗試使用PHP.CN電源數據恢復。

修復:桌面和文件文件夾不會自動刷新修復:桌面和文件文件夾不會自動刷新Apr 15, 2025 am 12:46 AM

進行一些更改時,Windows桌面或文件資源管理器或文件夾將自動刷新本身。但是,一些Windows 11/10用戶報告說,他們遇到了“桌面和文件文件夾不會自動刷新”問題。這篇文章f

修復:此Windows安裝程序軟件包有問題修復:此Windows安裝程序軟件包有問題Apr 15, 2025 am 12:45 AM

當您嘗試在Windows 11/10上安裝程序時,您可能無法安裝它並接收錯誤消息 - 此Windows Installer軟件包存在問題。 PHP.CN的這篇文章可幫助您修復它。

防病毒掃描可以加密文件嗎?安全與隱私防病毒掃描可以加密文件嗎?安全與隱私Apr 15, 2025 am 12:44 AM

當您在設備上運行防病毒軟件時,您可能希望它掃描所有文件和文件夾以獲取病毒。但是,出現一個問題:防病毒掃描可以加密文件嗎?該詢問深入研究了安全與隱私領域。 php.cn So

在Windows PC上免費下載或更新HDMI視頻驅動程序在Windows PC上免費下載或更新HDMI視頻驅動程序Apr 15, 2025 am 12:43 AM

如何在Windows上下載HDMI視頻驅動程序?如何將HDMI驅動程序更新為最新版本。您可以在這裡找到方法。此外,您可以嘗試使用PHP.CN電源數據恢復,以便在必要時丟失和刪除的文件。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具