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 如何更新某一条数据内容的主要内容,如果未能解决你的问题,请参考以下文章

PHP如何批量更新数据?急!!!

C#编程中如何改变DataTable里的某一条记录?

mysql 如何只更新其中一条数据?

php修改(数据库某一条记录)操作过程中如何实现弹出“确认、取消”对话框?以免造成不必要的错误?

sql中如何使一列中的多个重复数据只显示第一条

mysql 如何让null更新成0