假設我有nvarchar(300)
列。SQL Server - 附加旋轉文本字段
我追加文本,如下所示:
update tablename set fieldname = fieldname + 'appended string'
我怎麼能告訴SQL Server自動修剪從開始的文本,以確保它不會超過最大列長度?
假設我有nvarchar(300)
列。SQL Server - 附加旋轉文本字段
我追加文本,如下所示:
update tablename set fieldname = fieldname + 'appended string'
我怎麼能告訴SQL Server自動修剪從開始的文本,以確保它不會超過最大列長度?
您可以使用該功能RIGHT
:
update tablename set fieldname = RIGHT(fieldname + N'appended string', 300)
@LoveDotNet我認爲它從一開始就真正修剪,你的例子顯示了這一點。 – GolfWolf 2013-02-24 21:30:11
那麼爲什麼它以「stringappended string」結尾?它不應該總是以「stringappended」結尾嗎? – SharpAffair 2013-02-24 21:34:03
@LoveDotNet如果它只是從頭開始修剪,那麼最後應該保持原樣,它應該是「」附加字符串「' – GolfWolf 2013-02-24 21:35:54
如果你處理的** **的Unicode在SQL Server中字符串(和'nvarchar'是Unicode) - 你應該總是使用' N'...''符號 - 例如'更新表名設置fieldname = fieldname + N'appended string'',以清楚說明你的字符串文字是Unicode ... – 2013-02-24 21:15:05