asp向sql数据库如何修改同一字段某部分内容而不是改写

数据库中“flag”字段为:01,02,03如何在用:rs("flag")时只修改01;02,03不变,希望可以单独修改每一个值,而不是一起改写。那段代码可以执行,但字段... 数据库中“flag”字段为:01,02,03
如何在用:rs("flag")时只修改01;
02,03不变,希望可以单独修改每一个值,而不是一起改写。
那段代码可以执行,但字段里的值都被清除,变成只有01了。我要的功能是点击A按钮,将"flag"字段的第一个数变成“01”,点击B按钮,将"flag"字段的第二个数变成“02”,点击C按钮,将"flag"字段的第三个数变成“03”,点击D按钮,将"flag"字段清空变成“00”。先谢谢你的回答!

flag字段默认为0,不一定01,02,03都在,下面的方式一直不行,不知道怎样改一下可以?
<%
set rs=server.createobject("adodb.recordset")
sql="select flag from mytable where id="&request("id")&""
rs.open sql,conn,3,3
rs("flag")="01"
rs.update
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
谢谢上面qijie81的回答,能不能具体一些呀?
展开
 我来答
qijie81
2008-07-29 · TA获得超过620个赞
知道小有建树答主
回答量:153
采纳率:0%
帮助的人:223万
展开全部
如果已经用的rs("flag")取出来数据,那就用replace函数把01替换成想要的字符,然后再写回去

或者直接用一句sql语句
UPDATE 表名 SET flag=REPLACE(flag,'01','你要替换的值')

________________________________________
上边只是说了一下方法,具体运用还得看具体情况,那你说一下什么情况替换哪一部分值,我帮你想一下
那段代码不能执行的话,提示什么错误啊?
__________________________________________
不知道你的业务逻辑什么样的,不过感觉这样设计数据库并不很合理,让很多操作很难去做,按照你的说法大概写了一下,我假定flag字段清空的时候是00,00,00了,如果必须是00的话中间加句判断就行了,大概写了一下,你拷过去调试一下
<%
set rs=server.createobject("adodb.recordset")
sql="select flag from mytable where id="&request("id")&""
rs.open sql,conn,3,3
'***********************************************************
arrFlag = Split(rs("flag"),",")'flag这个字段默认值应该是00,00,00
If(request("btn") ="A") Then '判断用户点击了哪个按钮,记得在你的页面的几个按钮加一个传递参数的语句
arrFlag(0) = "01" '如果点击A按钮则第一部分设置为01
ElseIf (request("btn") ="B") Then
arrFlag(1) = "02" '如果点击A按钮则第二部分设置为02
ElseIf (request("btn") ="C") Then
arrFlag(2) = "03" '如果点击A按钮则第三部分设置为03
End If
If(request("btn") <>"D") Then '修改成功后合并并写入
rs("flag") = Join(arrFlag,",")
Else
rs("flag") = "00,00,00" '如果点击D按钮,则全部清零
End If
'***********************************************************
rs.update
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式