Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để ghi đầu ra thủ tục được lưu trữ trực tiếp vào một tệp trên FTP mà không cần sử dụng tệp cục bộ hoặc tệp tạm thời?

Nếu bạn được phép triển khai các hội đồng tích hợp CLR, bạn thực sự có thể sử dụng FTP mà không cần phải viết tệp tạm thời:

public static void DoQueryAndUploadFile(string uri, string username, string password, string filename)
{
    FtpWebRequest ftp = (FtpWebRequest)FtpWebRequest.Create(uri + "/" + filename);
    ftp.Method = WebRequestMethods.Ftp.UploadFile;
    ftp.Credentials = new System.Net.NetworkCredential(username, password);

    using(StreamWriter sw = new StreamWriter(ftp.GetRequestStream()))
    {
        // Do the query here then write to the ftp stream by iterating DataReader or other resultset, following code is just to demo concept:
        for (int i = 0; i < 100; i++)
        {
            sw.WriteLine("{0},row-{1},data-{2}", i, i, i);
        }
        sw.Flush();
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhận phần bên phải của chuỗi trong SQL Server (T-SQL)

  2. Cách xem nhật ký giao dịch trong SQL Server 2008

  3. Có tương đương với SELECT ... INTO OUTFILE trong SQL Server Management Studio không?

  4. Bật lại SSMS Addin

  5. Cách nhanh nhất để sao chép hàng trong SQL