一个excel导入多个mysql表
2015-09-20 17:43
435 查看
1,添加excel对应的字段表,全部为varchar类型(navicat中新建表,粘贴复制字段)。
2,mysql表添加示例数据,navicat导出向导,导出数据(普通excel格式),复制数据到excel文件。
3,navicat导入向导导入excel数据。
4,创建视图:(需要格式转换)
SELECT
id,
NAME,
age,
birthday,
CASE sex WHEN '男' THEN 1 when '女' then 0 ELSE null END as sex
FROM
user_cp ;
5,创建过程:
begin
#从excel导入数据 v1.1 huoyuanshen
declare t_user_id int(11);
declare t_age varchar(1000);
declare t_name varchar(1000);
declare t_birthday varchar(1000);
declare t_sex varchar(1000);
declare _done TINYINT(1) default 0;
declare cur_user cursor for select name,age,birthday,sex from view_user_cp ;
declare continue handler for not found set _done = 1;
open cur_user;
loop_xxx:loop
fetch cur_user into t_name,t_age,t_birthday,t_sex ;
if _done=1 then
leave loop_xxx;
end if;
begin
#第一个主表
insert into user_cp1(id,name,age) values(null,t_name,t_age) ;
#取得主键id
select max(id) into t_user_id from user_cp1;
#插入副表(包含主键id)
insert into user_cp2(id,user_id,birthday,sex) values(null,t_user_id,t_birthday,t_sex) ;
end;
end loop;
close cur_user;
end
2,mysql表添加示例数据,navicat导出向导,导出数据(普通excel格式),复制数据到excel文件。
3,navicat导入向导导入excel数据。
4,创建视图:(需要格式转换)
SELECT
id,
NAME,
age,
birthday,
CASE sex WHEN '男' THEN 1 when '女' then 0 ELSE null END as sex
FROM
user_cp ;
5,创建过程:
begin
#从excel导入数据 v1.1 huoyuanshen
declare t_user_id int(11);
declare t_age varchar(1000);
declare t_name varchar(1000);
declare t_birthday varchar(1000);
declare t_sex varchar(1000);
declare _done TINYINT(1) default 0;
declare cur_user cursor for select name,age,birthday,sex from view_user_cp ;
declare continue handler for not found set _done = 1;
open cur_user;
loop_xxx:loop
fetch cur_user into t_name,t_age,t_birthday,t_sex ;
if _done=1 then
leave loop_xxx;
end if;
begin
#第一个主表
insert into user_cp1(id,name,age) values(null,t_name,t_age) ;
#取得主键id
select max(id) into t_user_id from user_cp1;
#插入副表(包含主键id)
insert into user_cp2(id,user_id,birthday,sex) values(null,t_user_id,t_birthday,t_sex) ;
end;
end loop;
close cur_user;
end
相关文章推荐
- MySQL绿色版的安装(mysql-5.6.22-win32/winx64.zip)
- MySQL修改root密码的方法
- MYSQL数据库学习----插入、更新、删除
- MySQL中用户名定义上的细节可能导致的错误
- MYSQL数据库学习----查询
- MYSQL数据丢失讨论
- MySQL知识总结(二)
- 为什么我的mysql数据库里的表只有frm文件
- [实战]MVC5+EF6+MySql企业网盘实战(2)——用户注册
- 15个实用的管理mysql的mysqladmin命令
- MySQL数据库
- mysql join中,on和where的区别
- 实现秒杀的几个想法(续)
- 深入浅出:MySQL的左连接、右连接、等值连接
- 在启动mysql的时候出现如下问题:“ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)”
- 使用LVM快照实现对mysql数据库的备份
- 如何解决mysqld dead but subsys locked
- mysql数据库登录以及用户权限增删改查
- 解决Mysql中文乱码
- mysql压力测试