一、环境:
MySQL-5.0.41-win32
Windows XP professional
二、建立测试环境:
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为\’***\’。
update t_test t
set t.password = \’***\’
where t.bs = 2;
2、set多个字段
在表t_test中设置第一条记录(bs为1)的password为\’*\’、remark为\’*\’。
update t_test t
set t.password = \’*\’, t.remark = \’*\’
where t.bs = 1;
3、set null值
在表t_test中设置第三条记录(bs为3)的password为null、remark为null。
update t_test t
set t.password = null, t.remark = null
where t.bs = 3;
这个是按照标准语法写的,在不同的数据库系统中,update还有更多的写法,但是标准写法都是支持的。以上三个例子为了说明情况,每次都更新一行。在实际中,可以通过where语句约束来控制更新行数。
———-完———-