惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
Blog — PlanetScale
Blog — PlanetScale
B
Blog RSS Feed
L
LangChain Blog
Jina AI
Jina AI
爱范儿
爱范儿
C
Check Point Blog
云风的 BLOG
云风的 BLOG
Last Week in AI
Last Week in AI
月光博客
月光博客
GbyAI
GbyAI
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Stack Overflow Blog
Stack Overflow Blog
V
V2EX
A
About on SuperTechFans
有赞技术团队
有赞技术团队
Microsoft Azure Blog
Microsoft Azure Blog
The GitHub Blog
The GitHub Blog
博客园 - Franky
Apple Machine Learning Research
Apple Machine Learning Research
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google DeepMind News
Google DeepMind News
博客园 - 三生石上(FineUI控件)
S
SegmentFault 最新的问题

博客园 - Koy

vbox 安装 MacOS 时遇到的问题 转载:登录后,用户配置被修改的处理方法 left join 和 inner join 区别和优化 认识位移操作符 (轉載)sql server xml字段的操作 (轉)CSS 单行溢出文本显示省略号...的方法(兼容IE FF) (轉)Equal height boxes with CSS 獲得瀏覽器顯示標簽的真實的長寬高 轉:Jquery绑定img的click事件 SqlLocalDB 的一些常用命令行 转:css实现强制不换行/自动换行/强制换行 終于解決调用wordpress 4.3 xmlrpc api 发布包含分类的文章时返回“抱歉,文章类型不支持您的分类法”错误的問題 SQL 數字欄位格式調整(輸出結果以0補至固定長度) 转载:数组Marshalling ajax 維護 div 的 scrollbar 每日构建的好工具 修正了Flex Tree 控件在動態加載節點后 Scrollbar 沒有立即出現的問題 根據基本目錄及文件的全路逕,創建相應的子目錄,爲保存文件作準備 - Koy - 博客园 轉載:Sqlserver 2005 利用 with 創建臨時表進行遞歸查詢
動態修改 XML 欄位
Koy · 2016-06-24 · via 博客园 - Koy

2016-06-24 21:25  Koy  阅读(278)  评论()    收藏  举报

/* -- for test
DECLARE @content VARCHAR(50)
DECLARE @folioId VARCHAR(50)
DECLARE @opinionType VARCHAR(50)
SET @content = 'this is board'
SET @folioId = '4BC3141E-BEF5-4528-8B0B-600B7987246D'
SET @opinionType = 'opinion_board'
*/

IF(EXISTS(SELECT opinion FROM folio WHERE folio_id = @folioId AND opinion IS null)) BEGIN
UPDATE folio SET opinion = '<opinion></opinion>' WHERE folio_id = @folioId
END

DECLARE @val VARCHAR(50)
SELECT @val = opinion.value('(/opinion/*[local-name()=sql:variable(''@opinionType'')])[1]', 'nvarchar(max)' ) FROM folio WHERE folio_id = @folioId
if @val IS NOT NULL BEGIN
IF @val = '' BEGIN
UPDATE folio SET opinion.modify('insert text{sql:variable(''@content'')} into (/opinion/*[local-name()=sql:variable(''@opinionType'')])[1]')
WHERE folio_id = @folioId
END ELSE BEGIN
UPDATE folio SET opinion.modify('replace value of (/opinion/*[local-name()=sql:variable(''@opinionType'')]/text())[1] with sql:variable(''@content'')')
WHERE folio_id = @folioId
END
END
ELSE BEGIN
UPDATE folio SET opinion.modify('insert
if(sql:variable(''@opinionType'') = ''opinion_edit'')
then element opinion_edit { sql:variable(''@content'') }
else if(sql:variable(''@opinionType'') = ''opinion_dept'')
then element opinion_dept { sql:variable(''@content'') }
else if(sql:variable(''@opinionType'') = ''opinion_board'')
then element opinion_board {sql:variable(''@content'')}
else ()
into (/opinion)[1]')
WHERE folio_id = @folioId
END