mysql 如何更新某一条数据内容
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 如何更新某一条数据内容相关的知识,希望对你有一定的参考价值。
表字段有id、name、finished,finished默认都是0,我想先把finished不为1的数据先select出来(这语法会),然后选择某行的数据把finished改为1(这里的update不会,应该怎么写),where id作限制好像不行,因为select出来的id已经被打乱了(假如id=2的数据原来的finished是1,那就不会被选择,也就是表没有id=2的数据,我是用java swing写的表格,需要修改某一行的数据,从而修改数据库的finished),那我该怎么做才能更新第x行的finished呢
参考技术A 数据库的数据ID是唯一的啊,读进java表后也是唯一的,是一一对应的 参考技术B update 表 set finished=1 where id=3 and finished<>1追问这好像也不行,因为我读进java表格的数据是finished不等于1的,所以java表格里第三行可能对应的数据库里的是id=5而不是id=3,例如id=1,finished=1;id=2,finished=1;id=3,finished=1;id=4,finished=0;id=5,finished=0;那读进java表格的数据只有id=4,5,我选择java表格第二行,对应就是数据库第5行了
追答把id条件去掉。
追问但我不是把所有行的finished都改为1啊,换个说法,有一个表里id从1开始递增,我想更新这表里第5行finished不为1的的数据,但那一行肯定id不等于5
本回答被提问者采纳mysql 如何只更新其中一条数据?
如title中有的有数据,但很多是没有数据的,我想更新一条数据到没有数据的那里。我用update zi set title=1;不行啊,会更改所有。
select *from student WHERE cNo=' ';比方说我要查询cNo 为空的就 写一个where cNo=' '; 单引号中间要打一个空格键
修改也一样,update zi set title=1 where title = ‘ ’; 单引号中间要打一个空格键
注意,数据库中只识别单引号,不识别双引号追问
不行啊,都没看到有插入数据呢
追答你首先用查询的方法,查询下,看是否能查出数据 select *from zi WHERE title=' ';
还有要看看你的title 是否是字符型,不行在继续问
我把它设成empty string就可以插入数据,但全部插入了,我只要插入其中任何一个数据就行。
追答你的意思意思就是说 只想要一行的 title=‘’的数据修改? 还是修改所有title=‘’, 你把你的表贴个图吧,你这样我也不好说
追问只想要一行的 title=‘’的数据修改.
update zi set title=1 where id =你要改的那行id ;因为id唯一
追问如果这样指定id的话达不到自动的目的啊,我想让它自动识别并更新的
追答要修改一行,必须有一个唯一性的做为标准,如果你想达到智能更新,必须取到所有的title为空的数据,然后再你的代码里面判断,如果是id多少就给予修改成什么值,用判断语句来决定,否则数据是冗余的
参考技术A update zi set title=1 where title = ""追问不行呢~,没效果。
以上是关于mysql 如何更新某一条数据内容的主要内容,如果未能解决你的问题,请参考以下文章