代码之家  ›  专栏  ›  技术社区  ›  Karesh A

SQL Server维护计划存档到csv文件并删除记录

  •  0
  • Karesh A  · 技术社区  · 7 年前

    我看到标准维护计划可以选择只归档bak文件。

    有什么办法吗 每个表 )

    1. 将记录导出到CSV文件(CSV文件名和当前时间)
    2. 从中删除所有记录

    2 回复  |  直到 7 年前
        1
  •  1
  •   Ali Adlavaran    7 年前

    使用 OPENROWSET 要通过tsql导出数据并将此代码放入作业中:

    BEGIN TRANSACTION;
    
    DECLARE @FileName AS VARCHAR(250)= 'Data-'+
           SELECT REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR(50), SYSDATETIME(), 121), ' ', ''), ':', '-'), '.', '-')+'.xls';
    
    INSERT  INTO OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database='+@FileName+';', 'SELECT * FROM [SheetName$]')
    SELECT  *
    FROM    [YourTable];
    WHERE < ... conditions ... >
    
    DELETE  FROM [YourTable];
    WHERE < ... conditions ... >
    
    COMMIT; 
    

    我希望能有所帮助:)

        2
  •  0
  •   Anthony McGrath    7 年前

    如何用服务器端语言(如C)创建一个windows服务,并让它每天运行以检索数据,将其写入csv文件,然后删除数据?