修改语句:
UPDATE `world`.`creature_area` SET `guid`='6', `zone`='1', `area`='1' WHERE (`guid`='6');
前面已经讲了,UPDATE `world`.`creature_area` 就是修改哪个库的哪个表
SET 字面翻译,就是设置为,和导入语句不同的这是,一定要记住
`guid`='6', `zone`='1', `area`='1' 非常好理解了吧,就是某列设置为某值
WHERE (`guid`='6');这个非常重要,这个是判定你要修改那一行,这句的意思就是当guid`='6'的时候,进行前面的修改。
例句:UPDATE item_template SET socketColor_1 = 1 where itemlevel>'100' and itemlevel<'200';
同学们看懂了吗?我们只需要在第一个判定后面加入一个and,这样我们就可以有无限多的判定了,再练习一个,我们不但要等级大于100小于200的装备,还要只能是武器。
UPDATE item_template SET socketColor_1 = 1 where itemlevel>'100' and itemlevel<'200'and class='2';
DELIMITER $$
DROP PROCEDURE IF EXISTS WhileLoopProc$$
CREATE PROCEDURE WhileLoopProc()
BEGIN
DECLARE x INT;
SET x = 1;
WHILE x <= 1034 DO
INSERT INTO `item_enchantment_template` (`entry`, `ench`, `chance`, `type`) VALUES ('10002', (22001+x), 0.016, 1);
SET x = x + 1;
END WHILE;
END$$
DELIMITER ;
call WhileLoopProc();
乱不乱?别问我,我也不懂,但是该改什么我告诉你!
SET x = 1代表一个基数,通常我喜欢用0
WHILE x <= 1034 DO 代表你要导入多少条,公式是每行增加的数值乘以你要导入的条数然后减去每行增加的数值.
(22001+x) 代表值的最小值,比如你要导入值最小为80000,那么就写入(80000+x)
SET x = x + 1 代表你每个值增加多少,这里是每一行增加1,如果你要增加100,那么就写入SET x = x + 100
DELIMITER $$
DROP PROCEDURE IF EXISTS WhileLoopProc$$
CREATE PROCEDURE WhileLoopProc()
BEGIN
DECLARE x INT;
SET x = 0;
WHILE x <= 292110 DO
INSERT INTO `item_enchantment_template` (`entry`, `ench`, `chance`, `type`) VALUES ('10005', (3333+x), 0.016, 1);
SET x = x + 321;
END WHILE;
END$$
DELIMITER ;