update db1
set cb1.content=db2.content1+db2.content2
from cb1,cb2 where db1.title=db2.title
...全文
2923打赏收藏
mssql中如何合并两个ntext字段?
目标:将db2的content1、content2两个字段合并到db1的content字段,条件是两个数据库的title相同 出错:对数据类型而言运算符无效。运算符为 add,类型为 ntext。 update db1 set cb1.content=db2.content1+db2.content2 from cb1,cb2 where db1.title=db2.title
/*将表test_text1 的content列追加到 表test_text2的id相同的content列*/
if exists(select * from sysobjects o where o.xtype = 'u' and o.name = 'test_text1')
drop table test_text1
if exists(select * from sysobjects o where o.xtype = 'u' and o.name = 'test_text2')
drop table test_text2
create table test_text1(
id int,
content ntext)
create table test_text2(
id int,
content ntext)
insert test_text1
select 1,'abc' union all
select 2,'def'
insert test_text2
select 1,'ghi' union all
select 2,'jkl'
declare test_cur cursor for
select textptr(a.content),textptr(b.content)
from test_text1 a,test_text2 b
where a.id = b.id
open test_cur
fetch next from test_cur into @ptr_src,@ptr_des
while(@@fetch_status = 0)
begin
updatetext test_text2.content @ptr_des null 0 test_text1.content @ptr_src
select @ptr_src = null,@ptr_des = null
fetch next from test_cur into @ptr_src,@ptr_des
end