说明: select * from table2 where bb='是'
是数据库中我 需要存储的 字符串
例如 数据库表结构:
===========================================================
《SQL》 《ID》
select * from table2 where bb='是' 00001
select * from table4 where cc=1 00002
select * from table5 where dd=0 00003
===========================================================
我 怎么才可以把 这个 UPDATE 执行
方法1: 在SQL2000中 将 select * from table2 where bb='是' 转换成不带 单引号'
方法2: 在SQL2000中 将 update table1 set aa='select * from table2 where bb='是''
转换成 可以插入的语句
方法3: 在程序中 转换变量
string c =" update table1 set aa='select * from table2 where bb='是'' "
string d;
d="有效的UPDATE语句 "
请高手 帮帮 想想 谢谢 只要解决问题 什么方法都可以已试 或者别的好方法
谢谢
如果太难 可+分 谢谢啊
9 个解决方案
#1
update table1 set aa='select * from table2 where bb=''是'''
#2
回复人: yanzheng1(光原) ( ) 信誉:100 2005-02-22 10:51:00 得分: 0
update table1 set aa='select * from table2 where bb=''是'''
这样 我的 里面的SQL 就不能执行了 select * from table2 where bb=''是''
我 里面的SQL 语句 以后要执行的
update table1 set aa='select * from table2 where bb=''是'''
这样 我的 里面的SQL 就不能执行了 select * from table2 where bb=''是''
我 里面的SQL 语句 以后要执行的
#3
update table1 set aa='select * from table2 where bb=''是'''
#4
好像 你的UPDATE 存进去的 是:update table1 set aa='select * from table2 where bb='是'
不是update table1 set aa='select * from table2 where bb=''是''
我再试哈
不是update table1 set aa='select * from table2 where bb=''是''
我再试哈
#5
能执行的sql server里字符串中的连续2个单引号表示是1个单引号,你保存到字段里后你看一下结果不是你说的select * from table2 where bb=''是''
而是select * from table2 where bb='是'
而是select * from table2 where bb='是'
#6
declare @sqlstr nvarchar(200)
set @sqlstr=select 《SQL》 from biao where 《ID》=00001
select @sqlstr
update table1 set aa=@sqlstr
set @sqlstr=select 《SQL》 from biao where 《ID》=00001
select @sqlstr
update table1 set aa=@sqlstr
#7
declare @a table(a1 nvarchar(50),a2 varchar(50))
insert into @a(a1,a2)
select '122','''456'''
select * from @a
单引号---->>双引号
insert into @a(a1,a2)
select '122','''456'''
select * from @a
单引号---->>双引号
#8
感谢
yanzheng1(光原) ( ) 信誉:100
NewQger(Q哥) ( ) 信誉:100
你们说的是对的
我现在就再程序里把 string xx="select * from table2 where bb='是'"
转换成 string yy="select * from table2 where bb=''是''"
就 可以 string zz=" update table1 set aa='+ yy +' "了
如果 你们知道C#里的字符串 的字符替换 函数 写个出来 也好
先揭帖 哈 谢谢 所有参与本帖的朋友
yanzheng1(光原) ( ) 信誉:100
NewQger(Q哥) ( ) 信誉:100
你们说的是对的
我现在就再程序里把 string xx="select * from table2 where bb='是'"
转换成 string yy="select * from table2 where bb=''是''"
就 可以 string zz=" update table1 set aa='+ yy +' "了
如果 你们知道C#里的字符串 的字符替换 函数 写个出来 也好
先揭帖 哈 谢谢 所有参与本帖的朋友
#9
yy=xx.Replace("'", "''") 已解决哦
#1
update table1 set aa='select * from table2 where bb=''是'''
#2
回复人: yanzheng1(光原) ( ) 信誉:100 2005-02-22 10:51:00 得分: 0
update table1 set aa='select * from table2 where bb=''是'''
这样 我的 里面的SQL 就不能执行了 select * from table2 where bb=''是''
我 里面的SQL 语句 以后要执行的
update table1 set aa='select * from table2 where bb=''是'''
这样 我的 里面的SQL 就不能执行了 select * from table2 where bb=''是''
我 里面的SQL 语句 以后要执行的
#3
update table1 set aa='select * from table2 where bb=''是'''
#4
好像 你的UPDATE 存进去的 是:update table1 set aa='select * from table2 where bb='是'
不是update table1 set aa='select * from table2 where bb=''是''
我再试哈
不是update table1 set aa='select * from table2 where bb=''是''
我再试哈
#5
能执行的sql server里字符串中的连续2个单引号表示是1个单引号,你保存到字段里后你看一下结果不是你说的select * from table2 where bb=''是''
而是select * from table2 where bb='是'
而是select * from table2 where bb='是'
#6
declare @sqlstr nvarchar(200)
set @sqlstr=select 《SQL》 from biao where 《ID》=00001
select @sqlstr
update table1 set aa=@sqlstr
set @sqlstr=select 《SQL》 from biao where 《ID》=00001
select @sqlstr
update table1 set aa=@sqlstr
#7
declare @a table(a1 nvarchar(50),a2 varchar(50))
insert into @a(a1,a2)
select '122','''456'''
select * from @a
单引号---->>双引号
insert into @a(a1,a2)
select '122','''456'''
select * from @a
单引号---->>双引号
#8
感谢
yanzheng1(光原) ( ) 信誉:100
NewQger(Q哥) ( ) 信誉:100
你们说的是对的
我现在就再程序里把 string xx="select * from table2 where bb='是'"
转换成 string yy="select * from table2 where bb=''是''"
就 可以 string zz=" update table1 set aa='+ yy +' "了
如果 你们知道C#里的字符串 的字符替换 函数 写个出来 也好
先揭帖 哈 谢谢 所有参与本帖的朋友
yanzheng1(光原) ( ) 信誉:100
NewQger(Q哥) ( ) 信誉:100
你们说的是对的
我现在就再程序里把 string xx="select * from table2 where bb='是'"
转换成 string yy="select * from table2 where bb=''是''"
就 可以 string zz=" update table1 set aa='+ yy +' "了
如果 你们知道C#里的字符串 的字符替换 函数 写个出来 也好
先揭帖 哈 谢谢 所有参与本帖的朋友
#9
yy=xx.Replace("'", "''") 已解决哦