Job:SQL 读取 CSV 整套解决方案 工作计划:读取csv文件到数据库,要求如下:要求: 1:CSV每天会有一个不同 YYMMDD的文件名,因此需要文件名是动态(有规则的) 2:数据读取完成以后,要求把该文件剪切到一个固定文件夹里 3: 以上可以在工作计划(Job)里执行SQL Server 版本(SQL Server 2005)请给出一些脚本及方法。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 开启xp_cmdshell完成这些还不是分分钟的事。 写个存储过程,用job调用即可。参考:http://blog.csdn.net/maco_wang/article/details/3980517 --开启shellcmdUSE masterEXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE; USE TEST--创建测试表create table t31(id int,name char(20));--定义变量DECLARE @date varchar(20)DECLARE @file varchar(200),@file_n varchar(200)DECLARE @sql varchar(2000),@sql_cmd varchar(2000)SET @date=convert(varchar(10),getdate(),112);SET @file='D:\test'+@date+'.csv';SET @file_n='D:\bak\test'+@date+'.csv'--导入数据SET @sql='BULK INSERT t31FROM '''+@file+'''WITH ( FIELDTERMINATOR = '''+','+''', ROWTERMINATOR = '''+'\n'''+' ) ';exec (@sql)--修改文件位置SET @sql_cmd='EXEC master..xp_cmdshell '+'''move '+@file+' '+@file_n+'''';exec (@sql_cmd) 可以使用ssis,不用开启xp-cmdshell 建议用SSIS来做SSIS擅长做这些,让JOB调度定期执行这些packagexp-cmdshell能不开启就别开启注入大多利用这个xp-cmdshell 做的 水哥,SSIS没用过,能够给个demo? 剪哥的Demohttp://blog.csdn.net/jinjazz/archive/2008/07/25/2710169.aspx 求各位大侠,急!!! 求SQL语句!!!!!在线等!!!! 唉,我问题真多,又来问查询语句了!想了半天就想不出这条语句怎么写! 求一SQL语句 什么数据库系统装了都用不了,进来一看。 如何查询时间的问题 BCP路径问题,应者有分!!! 如何让SQL SERVER定时进行重启? 如何把Lotus 的数据转换为sql server的数据。大虾,快来救我!! SQL语句可以实现每列数据行数不一样的筛选效果吗 问一条SQL语句 如何每天创建一个表分区
完成这些还不是分分钟的事。
参考:
http://blog.csdn.net/maco_wang/article/details/3980517
USE master
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE; USE TEST
--创建测试表
create table t31(id int,name char(20));--定义变量
DECLARE @date varchar(20)
DECLARE @file varchar(200),@file_n varchar(200)
DECLARE @sql varchar(2000),@sql_cmd varchar(2000)SET @date=convert(varchar(10),getdate(),112);
SET @file='D:\test'+@date+'.csv';
SET @file_n='D:\bak\test'+@date+'.csv'
--导入数据
SET @sql='BULK INSERT t31
FROM '''+@file+'''
WITH (
FIELDTERMINATOR = '''+','+''',
ROWTERMINATOR = '''+'\n'''+'
) ';
exec (@sql)--修改文件位置
SET @sql_cmd='EXEC master..xp_cmdshell '+'''move '+@file+' '+@file_n+'''';
exec (@sql_cmd)
SSIS擅长做这些,
让JOB调度定期执行这些package
xp-cmdshell能不开启就别开启
注入大多利用这个xp-cmdshell 做的
能够给个demo?
http://blog.csdn.net/jinjazz/archive/2008/07/25/2710169.aspx