sql server中的一個坑-len與datalength區別
今天在處理問題時,統計一個欄位最大位元組數時,出現了問題:
select max(len(subject_name)) from dbtabletest;
但返回值為129。
但在oracle端始終出現報錯,說插入字元數過大,真是奇葩。
搞了半天,就把這個subject_name,複製出來,在文字編輯器中發現了有一行值後面有太多空格。直到現在才知道,需要使用datalength才能統計到結尾的空格,真是又被sql server坑了一把。
還好,最終找到問題了!
當採用非Unicode編碼時,即varchar型別的字串時,DataLength()和Len()的區別:
1、空格處理
Len() 字串表示式的字元數,不計尾部空格,但計頭部空格和中間的空格;
DataLength() 任何表示式的位元組數,包括空格 。
2、對於漢字的處理
區別在於Len只返回字元數,一個漢字代表一個字元。Datalength返回的是位元組數,一個漢字兩個位元組。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29371470/viewspace-2646973/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server中count(*)和Count(1)的區別SQLServer
- SQL Server新老版本CE區別SQLServer
- MySQL中普通sql與預編譯sql 區別MySql編譯
- SQL JOIN 中 on 與 where 有何區別SQL
- SQL LEN()函式用法SQL函式
- SQL中where和on的區別SQL
- SQL Server 中的一些概念SQLServer
- [精選] SQL中的IN與NOT IN、EXISTS與NOT EXISTS的區別及效能分析SQL
- SQL Server 別名(as)SQLServer
- SQL Server 2019企業版和標準版的區別?SQLServer
- SQL 獲取SQL Server中兩個日期之間的所有日期SQLServer
- sql中UNION和UNION ALL的區別SQL
- SQL SERVER與C#的資料型別對應表SQLServerC#資料型別
- Javascript中“==”與“===”的區別JavaScript
- Python中 ‘==‘ 與‘is‘的區別Python
- 對線面試官:SQL中的IN與NOT IN、EXISTS與NOT EXISTS的區別及效能分析面試SQL
- 8種最坑的SQL錯誤用法,第一個就很坑?SQL
- SQL Server 2008中Analysis Services的新特性——深入SQL Server 2008SQLServer
- SQL Server誤區 一個例項多個映象和日誌傳送延遲SQLServer
- DataGear 變更部署資料庫為SQL Server填坑指南(含轉寫後的SQL server程式碼及SQL server配置檔案)資料庫SQLServer
- Java中(==)與equals的區別Java
- SQL Server 中的 ACID 屬性SQLServer
- SQL Server關於AlwaysOn的理解-讀寫分離的誤區(一)SQLServer
- MYSQL和SQL的區別MySql
- SQL Server-資料型別SQLServer資料型別
- pytorch 踩坑,TypeError: expected seqence object with len>_0 or a single integer_typeerror: expected sequence object with len __ 0PyTorchErrorObject
- SQL中 where 子句和having子句中的區別SQL
- 在Pandas中 SQL操作:SQLAlchemy和PyMySQL的區別MySql
- Oracle9i中v$sql、v$sqlarea、v$sqltext、v$sql_plan的聯絡與區別OracleSQL
- SQL語句case when外用sum與count的區別SQL
- js中 let 與 var 的區別JS
- vue中sass與SCSS的區別VueCSS
- js中!和!!的區別與用法JS
- JavaScript 中substr與 substring 的區別JavaScript
- Vue 中ref()與 reactive() 的區別VueReact
- 在SQL Server 2008中的SP上使用表型別值引數MHSQLServer型別
- SQL Server日期資料型別DATE的使用SQLServer資料型別
- SQL Server中的版本號如何理解SQLServer