navicat ->函数->新建函数
数据库启动:service mysql start
1、insert into: 使用数据库工具的查询插入表信息
查询->新建查询
INSERT INTO teacher(card_no, name, sex, age, course, created, modified) VALUES ('1233', 'abc', 'M', 12, 'eng',NOW(), NOW());
选中->右键->执行
调试可以在函数, select concat(1, 'abc')
2、存储过程:navicat->函数
存储过程只能单线程执行
BEGIN
#定义变量
DECLARE i INT DEFAULT 0;
WHILE i < 1009 DO
INSERT INTO teacher(card_no, name, sex, age, course, created, modified) VALUES ('1233', 'abc', 'M', 12, 'eng',NOW(), NOW());
SET i = i+1;
END WHILE;
END
卡号不允许重复,需要做参数化:
存储过程的拼接:concat(str1, str2...)
BEGIN
#定义变量
DECLARE i INT DEFAULT 0;
#定义性别
DECLARE p_sex VARCHAR(5);
#定义课程
DECLARE p_course VARCHAR(5);
DECLARE p_age INT;
WHILE i < 1009 DO
#性别赋值
IF i%2=0 THEN
SET p_sex = 'M';
set p_course = 'Eng';
ELSE
SET p_sex = 'W';
set p_course = 'Math';
END IF;
#随机数,取整,年龄
SET p_age =FLOOR(RAND()*100);
INSERT INTO teacher(card_no, name, sex, age, course, created, modified) VALUES (CONCAT('1000',i), CONCAT('snail_',i), p_sex, p_age, p_course,NOW(), NOW());
SET i = i+1;
END WHILE;
END