2012-04-12 42 views
3

我想編寫一個訪問查詢來計算鏈接的SQL Server表中的ntext字段中的字符。如何計算訪問查詢中SQL服務器ntext(即備忘錄)字段中的字符數?

在SQL Server中,我只想用這個命令(在訪問不會工作):

select datalength(nTextFieldName) //this command works on sql server but not in access 

在訪問,我只能找到LEN命令,慣於在NTEXT領域的工作:

select len(nTextFieldName) // access says nText is not a valid argument to this function. 

谷歌搜索,我發現一堆帖子說使用len,這是給我一個錯誤。

命令是什麼?

回答

8

ntext類型不適用於LEN。這種特定類型以及其他一些被棄用:

ntext, text, and image data types will be removed in a future version of Microsoft SQL 
Server. Avoid using these data types in new development work, and plan to modify applications 
that currently use them. Use nvarchar(max), varchar(max), and varbinary(max) instead. For more 
information, see Using Large-Value Data Types. 

來處理這種情況的最好辦法是轉換/施放的數據類型爲一個工程,如varchar(max)/nvarchar(max),然後纔拿到LEN

SELECT LEN(CAST(nTextFieldName As nvarchar(max)))

+0

如何確定轉換期間轉換的文本是否被截斷? – JoeBrockhaus 2013-07-15 00:20:35

+1

LEN(CAST(nTextFieldName As nvarchar(max)))爲我工作。 – 2015-06-25 10:18:53

相關問題