一、环境:
MySQL-5.0.41-win32
Windows XP professional
二、建立测试环境:
1
2
3
4
5
6
7
8
9
10
11
|
DROP TABLE IF EXISTS t_test;
CREATE TABLE t_test (
bs bigint (20) NOT NULL auto_increment,
username varchar (20) NOT NULL ,
password varchar (20) default NULL ,
remark varchar (200) default NULL ,
PRIMARY KEY (bs)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=gbk;
INSERT INTO t_test VALUES (1, 'lavasoft' , '123456' , NULL );
INSERT INTO t_test VALUES (2, 'hello' , NULL , NULL );
INSERT INTO t_test VALUES (3, 'haha' ,zz,tt);
|
三、测试
1、set一个字段
在表t_test中设置第二条记录(bs为2)的password为'***'。
1
2
3
|
2、set多个字段
在表t_test中设置第一条记录(bs为1)的password为'*'、remark为'*'。
1
2
3
|
update t_test t
set t. password = '*' , t.remark = '*'
where t.bs = 1;
|
3、set null值
在表t_test中设置第三条记录(bs为3)的password为null、remark为null。
1
2
3
|
update t_test t
set t. password = null , t.remark = null
where t.bs = 3;
|
结语
这个是按照标准语法写的,在不同的数据库系统中,update还有更多的写法,但是标准写法都是支持的。以上三个例子为了说明情况,每次都更新一行。在实际中,可以通过where语句约束来控制更新行数。
原文链接:https://blog.51cto.com/lavasoft/27692?source=drt