Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да напиша изход от съхранена процедура директно във файл на FTP, без да използвам локални или временни файлове?

Ако ви беше позволено да прилагате CLR интеграционни модули, вие всъщност бихте могли да използвате FTP, без да се налага да пишете временен файл:

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. Обединете няколко реда в един ред

  2. Лоша производителност на плана за изпълнение на съхранената процедура на SQL - подслушване на параметри

  3. Защо SQL Server използва индексно сканиране вместо търсене на индекс, когато клаузата WHERE съдържа параметризирани стойности

  4. Разберете схемата на SQL Server по подразбиране за сесия

  5. Какво се случва, ако промените съхранена процедура, докато тя работи?