在計算機中,所有的數據在存儲和運算時都要使用二進位數表示,包括52個字母(包括大寫)、數字、常用的符號(例如*、#、@等)。具體用哪些二進位數字表示哪個符號,大家就必須使用相同的編碼規則,美國有關的標準化組織就出臺了ASCII編碼(美國信息交換標準代碼)。
SELECT CHAR(36); --顯示的結果為$SQL中的替換函數replace()的語法格式如下:
REPLACE ( string_expression , string_pattern , string_replacement )string_expression 要搜索的字符串表達式。string_pattern 是要查找的子字符串,不能是空字符串 ('')。string_replacement 替換字符串。如何利用ASCII編碼替換空格等特殊字符呢?
--去掉空格UPDATE [dbo].[線上培訓合格人員] set 身份證號=REPLACE(身份證號,char(32),'')--去掉TABUPDATE [dbo].[線上培訓合格人員] set 身份證號=REPLACE(身份證號,char(32),'')ASCII中十進位編碼 (對應)縮寫字符(或功能/解釋)如下:
0 NUL(null) 空字符1 SOH(start of headline) 標題開始2 STX (start of text) 正文開始3 ETX(end of text) 正文結束4 EOT (end of transmission) 傳輸結束5 ENQ (enquiry) 請求6 ACK (acknowledge) 收到通知7 BEL (bell) 響鈴8 BS (backspace) 退格9 HT (horizontal tab) 水平制表符10 LF (NL line feed, new line) 換行鍵11 VT (vertical tab) 垂直制表符12 FF (NP form feed, new page) 換頁鍵13 CR (carriage return) 回車鍵14 SO (shift out) 不用切換15 SI (shift in) 啟用切換16 DLE (data link escape) 數據鏈路轉義17 DC1 (device control 1) 設備控制118 DC2 (device control 2) 設備控制219 DC3 (device control 3) 設備控制320 DC4 (device control 4) 設備控制421 NAK (negative acknowledge) 拒絕接收22 SYN (synchronous idle) 同步空閒23 ETB (end of trans. block) 傳輸塊結束24 CAN (cancel) 取消25 EM (end of medium) 介質中斷26 SUB (substitute) 替補27 ESC (escape) 換碼(溢出)28 FS (file separator) 文件分割符29 GS (group separator) 分組符30 RS (record separator) 記錄分離符31 US (unit separator) 單元分隔符32 space 空格
替換欄位中的TAB制表符char(9)、換行符char(10)、回車鍵char(13)、空格char(32)的示例代碼如下:
UPDATE [ dbo ].[線上培訓合格人員]SET 身份證號 = REPLACE (REPLACE (REPLACE (REPLACE ( REPLACE ( 身份證號, CHAR ( 10 ), '' ), CHAR ( 13 ), '' ),CHAR ( 10 ) + CHAR ( 13 ),''),CHAR ( 9 ),''),CHAR ( 32 ),'')