教您如何批量修改MySQL数据表字段内容

数据库 MySQL
如何手动将MySQL中同一数据表内不同字段之间的内容批量转换呢?这是我们经常遇到的问题。下文就教您一个解决此问题的方法,供您参考。

MySQL数据表中数据的处理方法大家都有所了解,如果MySQL数据表的数据需要批量修改,能否实现呢?答案无疑是肯定的。

在PHPwind 6.0的数据库里,它的会员资料存在pw_members里面,会员帐号正常状态下这个数据表里的“yz”字段显示的值是1(即表示已经激活了帐号)。如果需要再次邮件激活,则这个值显示的内容必须与另一个字段“regdate”的值相同,程序在验证时自动检测两个字段的内容是否完全一样之后才会进行有效验证,否则会给出参数错误的提示。例如会员UID 1的“regdate”字段内容是1194067635,那么“yz”字段的值也一样是1194067635;以此类推,如果会员UID 2的“regdate”字段内容是1175320740,那么“yz”字段的值也一样是1175320740...

此时,由于可能的各种原因,“yz”字段的值可能并不是都是1(即表示已经激活了帐号)的状态,如何让“yz”字段的值和“regdate”字段内容保持一致呢?同时,因为会员资料N多,又如何批量转换所有会员帐号的这个字段值呢?我用的方法是这样的

UPDATE table SET 被替换的字段名=被复制的字段名

应用到本文实例: UPDATE pw_members SET yz=regdate

其中“pw_members”是数据表名称;“被替换的字段名”指的是在“pw_members”中你要修改的那个字段的名称,这里是“yz”;而“被复制的字段名”指的是提供字段内容给“yz”字段复制的字段名(好拗口哟!)“regdate”;这样可以批量将每个UID内的“yz”修改并复制成和“regdate”相同的值。而会员在下次登陆时社区就会要求他再次激活邮件帐号。

由于此举是批量修改,因为将会把包括社区创建者在内的所有账号都改成未激活,所以当执行完了以后,要立即把包括社区创建者在内不需要激活的账号改回正常状态。方法是在pw_members数据表的浏览状态下,选择你要改回正常状态的会员帐号,点击“编辑”进入之后找到“yz”字段,将字段的值例如“1194067635”改成“1”,这样这个会员帐号就恢复正常了;也可以用管理员帐号进入社区管理后台“会员管理”里将需要的会员ID手动激活。

另外,如何手动将同一数据表内不同字段之间的内容批量转换,可以参考下面的命令:

UPDATE table set 字段名=REPLACE(字段名,'原字符串','替换的字符串') where 已知的字段名 LIKE '%原字符串%'

应用到本文实例:

UPDATE pw_members set yz=REPLACE(yz,'1','2') where yz LIKE '%1%'

其中“pw_members”是数据表名称;“字段名”指的是在“pw_members”中你要修改的那个字段的名称,这里是“yz”;“原字符串”是字段“yz”现在默认的值“1”;而“替换的字符串”指的是你将要修改的字段“yz”新的默认值“2”。

 

 

【编辑推荐】

MySQL分表处理的实现方法

MySQL复制表数据到新表的方法

MySQL多表删除的实现

MySQL独立表空间的优缺点

MySQL MyISAM表结构的恢复

责任编辑:段燃 来源: 互联网
相关推荐

2010-05-18 17:17:02

MySQL数据表

2010-10-08 10:37:00

MYSQL添加新字段

2010-10-11 09:41:23

MySQL环境变量

2010-11-25 14:49:08

MySQL查询最大值

2010-09-27 16:48:07

sql server时

2010-11-24 10:35:34

MySQL单表多字段

2010-10-12 14:53:31

mysql索引优化

2010-11-23 13:29:36

MySQL数据列类型

2010-09-16 15:48:03

SQL Server系

2010-10-29 11:51:30

oracle用户名

2010-09-28 10:35:58

SQL字段默认值

2010-11-25 10:44:30

2010-10-12 11:07:34

MySQL存储过程

2010-10-12 16:35:05

MySQL用户权限

2010-10-08 11:27:34

MySql访问限制

2010-10-11 13:29:53

MYSQL最大连接数

2010-10-13 15:59:21

MySQL索引

2010-11-25 14:56:46

MySQL全文查询

2010-11-22 16:05:53

MySQL多表插入

2010-10-14 10:28:18

MySQL动态视图
点赞
收藏

51CTO技术栈公众号