mysql批量生成外部文件的脚本
2009-05-04 18:00
148 查看
DELIMITER $$
DROP PROCEDURE IF EXISTS `travian_cc_s2_2`.`p_test`$$
CREATE DEFINER=`postrock`@`58.246.137.218` PROCEDURE `p_test`()
begin
declare l_db_name varchar(300);
declare l_file_name varchar(300);
declare l_cur cursor for select schema_name from information_schema.schemata where schema_name like 'travian_%' and substring(schema_name,-1,2)=2;
open l_cur;
fetch l_cur into l_db_name;
while (l_db_name is not null) do
set @a=concat(l_db_name,'user_reg_inf','.txt');
set @sql=concat('Select *,''0'' as PASSPORT_CODE,''Travian'' as GAME,''CN1'' as SERVER_NAME from (SELECT a.uid as uid,a.name as user_id,FROM_UNIXTIME( b.signup,''%Y-%m-%d %H:%i:%S'') as user_reg_time
FROM ',l_db_name,'.s_details2 a LEFT JOIN ',l_db_name,'.s_details1 b
ON a.uid=b.uid) a left join
(SELECT uid,ip as reg_ip,min(zeit) FROM ',l_db_name,'.x_login
WHERE zeit between (unix_timestamp(CURDATE())-86400) AND (unix_timestamp(CURDATE()))
GROUP BY uid)
b on a.uid=b.uid into outfile','"','/home/chenyl/',@a,'"');
prepare stmt from @sql;
execute stmt;
deallocate prepare stmt;
fetch l_cur into l_db_name;
end while;
close l_cur;
end$$
DELIMITER ;
DROP PROCEDURE IF EXISTS `travian_cc_s2_2`.`p_test`$$
CREATE DEFINER=`postrock`@`58.246.137.218` PROCEDURE `p_test`()
begin
declare l_db_name varchar(300);
declare l_file_name varchar(300);
declare l_cur cursor for select schema_name from information_schema.schemata where schema_name like 'travian_%' and substring(schema_name,-1,2)=2;
open l_cur;
fetch l_cur into l_db_name;
while (l_db_name is not null) do
set @a=concat(l_db_name,'user_reg_inf','.txt');
set @sql=concat('Select *,''0'' as PASSPORT_CODE,''Travian'' as GAME,''CN1'' as SERVER_NAME from (SELECT a.uid as uid,a.name as user_id,FROM_UNIXTIME( b.signup,''%Y-%m-%d %H:%i:%S'') as user_reg_time
FROM ',l_db_name,'.s_details2 a LEFT JOIN ',l_db_name,'.s_details1 b
ON a.uid=b.uid) a left join
(SELECT uid,ip as reg_ip,min(zeit) FROM ',l_db_name,'.x_login
WHERE zeit between (unix_timestamp(CURDATE())-86400) AND (unix_timestamp(CURDATE()))
GROUP BY uid)
b on a.uid=b.uid into outfile','"','/home/chenyl/',@a,'"');
prepare stmt from @sql;
execute stmt;
deallocate prepare stmt;
fetch l_cur into l_db_name;
end while;
close l_cur;
end$$
DELIMITER ;
相关文章推荐
- Windows下MySQL批量执行SQL脚本文件
- eclipse配置外部工具利用javah编译生成头文件
- centos shell编程4【分发系统】 服务器标准化 mkpasswd 生成密码的工具 expect讲解 expect传递参数 expect自动同步文件 expect指定host和要同步的文件 expect文件分发系统 expect自动发送密钥脚本 Linux脚本执行方式 第三十八节课
- 在MyEclipse的web项目/java项目中,使用Hibernate-tools中的hbm2java和hbm2ddl工具,根据hbm文件自动生成pojo和数据库脚本
- #Shell脚本 -- 由json文件生成sql
- 检查数据库名称与数据库逻辑名、物理文件名称是否一致,并生成修复脚本
- python脚本从excel表到处数据,生成指定格式的文件
- 全面解析Unity3D自动生成的脚本工程文件
- 使用Hibernate-tools中的hbm2java和hbm2ddl根据hbm文件自动生成pojo和数据库脚本
- Linux脚本文件的生成
- 动态装载外部JavaScript脚本文件
- oracle使用sql脚本生成csv文件案例学习
- Hibernate使用自定义脚本替换注解或者xml文件中的自动生成表结构
- shell脚本中生成的spool文件没有执行的语句
- 利用python生成一个导出数据库的bat脚本文件
- eclipse配置外部工具利用javah编译生成头文件
- 有引用外部jar包时(J2SE)生成jar文件
- 在外部文件夹生成拷贝文件(将一个地址的文件拷贝到另一个地址)
- 254个VIP时脚本生成keepalived.conf配置文件 推荐
- 【分析】生成dalvik解释器原文件的脚本:gen-mterp.py