ASP.NET 사이트에 대한 반복적 인 가져 오기를 만들 수있는 좋은 방법이 있습니까?

StackOverflow https://stackoverflow.com/questions/583648

문제

내가 작업하고있는 사이트는 Windows Server 2003 및 SQL Server 8 (2000?) 및 ASP.NET 3.5를 실행하는 것입니다.

ftp'd 텍스트 파일에서 데이터베이스로 데이터를 가져 오려면 일종의 스크립트 나 응용 프로그램이 실행되어야합니다. 현재 데이터베이스를 사용하는 컴퓨터에서 실행중인 사이트가 이미 있습니다. 예약 된 작업을 사용하여 데이터를 가져올 .aspx 페이지를 안정적으로 시작할 수 있습니까? 아니면 더 나은 접근 방식이 있습니까?

다른 사람이 가져 오기를 실행하는 페이지에 액세스 할 수 없도록하는 것은 어떻습니까? 나는 임의의 사용자가 가져 오기를 실행하는 것을 원하지 않습니다!

미리 감사드립니다!

추신 : 일부 처리는 데이터를 삽입하기 전에 데이터에서 발생해야합니다. 즉, 조회, 조건부 등이 있으므로 DB 도구는 충분히 강력하지 않습니다 (생각합니다). 나는 DTS를 싫어 하고이 버전에서는 SSIS를 사용할 수 없습니다.

도움이 되었습니까?

해결책

작업에서 DTS 및 저장된 절차.

BCP 및 작업에 저장된 절차.

당신은 많은 조회와 변환을해야한다고 말합니까? SQL은 그것에 능숙하고 빨리하는 데 능숙합니다. 처음에는 조금 위협적으로 보일 수 있지만 어렵지는 않습니다.

다른 팁

C# 앱이 가져 오기를 처리하려면 OA 양식이있는 Windows 응용 프로그램 (EXE)을 제안합니다 (실행될 때마다 UI가 팝업되지 않기 때문에 콘솔 앱보다 낫다). 예정된 작업으로마다 (매 순간)마다 실행하도록하십시오.

ASP.NET을 사용하는 이유는 무엇입니까? 작업의 복잡성에 따라 데이터베이스 (벌크로드)에 직접로드하거나 DTS (SQL Server 2000) 또는 SSIS (SQL Server 2005/2008)를 사용할 수 있습니다.

대량 삽입 또는 BCP를 실행하여 대신 데이터를 가져 오려면 여기를 참조하십시오. http://msdn.microsoft.com/en-us/library/aa173839(sql.80).aspx

나는 여기에 다른 사람들을 반향합니다 - 당신은 예정된 작업이 웹 페이지를 치고 싶지 않습니다. SQL Server는 좋은 데이터 가져 오기 옵션을 제공하거나 간단한 Windows 프로그램을 작성하여 예약 작업으로 실행할 수 있습니다.

또 다른 옵션은 FTP 디렉토리를보고 가져 오는 Windows 서비스를 작성하는 것입니다.

다른 사람들이 말했듯이, 아마도 별도의 콘솔 애플리케이션 (예정된 작업에 의해 트리거) 또는 Windows 서비스 가이 시나리오에 가장 적합한 옵션 일 것입니다.

반면에 서버에서 실행중인 웹 앱에 필요한 모든 기능이 이미 있다면 스크립트 (vbscript, jscript)를 시작하는 예정된 작업을 설정할 수 있습니다. 웹 앱.

어떤 종류의 보안이 있으려면 (예 : 사용자가 해당 페이지를 호출 할 수없는 경우) 페이지에 일부 코드를 추가하여 페이지를 호출했는지 확인할 수 있습니다. http : // localhost. 이렇게하면 최소한 원격 클라이언트에서 페이지가 호출되는 것을 방지 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top