2011-01-25 6 views
1

SQL Server 테이블에서 데이터를 가져 와서 Oracle 테이블을 채우고 싶습니다. 지금 당장의 해결책은 데이터를 Excel 테이블에 덤프하고 매크로를 작성하여 Oracle에로드 할 수있는 SQL 파일을 작성하는 것입니다. 이 문제는이 프로세스를 자동화하고 싶고 자동화 할 수 있는지 잘 모르겠습니다.SQL Server에서 Oracle로 데이터를 가져 오는 방법은 무엇입니까?

SQL Server 테이블의 데이터로 Oracle 테이블을 쉽게 채울 수 있습니까? 사전에

감사

+5

Excel을 사용하여 Sql Server에서 Oracle로 데이터를 전송하는 것은 중동에서 카누로 미국으로 운송하는 것과 같습니다. – MusiGenesis

답변

2

예. SQL Server Integration Services을 나타내는 MS SQL의 SSIS를 살펴보십시오. SSIS를 사용하면 SQL Server 작업을 통해 자동화 된 기능을 비롯하여 다양한 데이터 원본간에 데이터를 이동할 수있는 모든 종류의 고급 기능을 사용할 수 있습니다. 귀하의 경우, 다양한 방법으로 connecting to Oracle을 달성 할 수 있습니다.

2

귀하의 "쉬운"정의에 달려 있다고 가정합니다.

가장 강력한 방법 중 하나를 눌러 다음 SQL Server 데이터베이스에 대한 데이터베이스 링크를 생성 오라클에서 heterogeneous connectivity을 사용하고 SQL 서버에서 데이터를 당기거나 SQL에서 linked server에게 오라클에 연결하는 서버를 만들고하는 것 SQL 서버에서 오라클 데이터.

0

이 문제를 자동화하는 세 가지 방법이 있습니다 :

1) 바울이 제안하고 만약이 작업을 수행 할 것 SSIS 패키지와이 SQL 에이전트를 통해 예약 할 수 있습니다,

2) 생성으로 당신이 할 수있는 SSIS를 다루고 싶지 않다면 무료 SQL # (SQLsharp) CLR 라이브러리를 http://www.SQLsharp.com/에서 다운로드하고 DB_BulkCopy 저장 프로 시저를 사용하여 SQL Agent를 통해 예약 할 수있는 T-SQL Stored Proc에서이 작업을 수행 할 수 있습니다. [참고 : 저는 SQL #의 저자입니다]

3) SQL Server에서 Oracle로 링크 된 서버를 설정할 수도 있지만 잠재적 인 보안 허점이라는 단점이 있습니다. 물론 단일 테이블 (또는 비슷한 테이블)에 대한 쓰기 액세스 만있는 Oracle 로그인을 사용할 수 있습니다.

0

많은 방법이 있습니다. 어떤 것을 선택 하느냐는 요구 사항에 따라 다릅니다.

  • Excel을 사용하면 일회성 문제가 발생하지 않습니다.
  • 일회성 문제라면 단일 데이터 세트와 여러 데이터 어댑터를 사용하여 데이터 덤프를 수행하는 간단한 .NET 애플리케이션을 작성할 수 있습니다. C# code example here.
  • 정상적인 경우 위의 내용을 Schtasks 작업에 넣거나 SSIS를 사용할 수 있습니다. 나는 SSIS가 추가 비용 옵션이라고 생각한다.
  • "온라인 액세스"가 필요한 경우 연결된 데이터베이스가 적합 할 수 있습니다.
+0

SSIS는 무료입니다. Enterprise Edition에는 추가 SSIS 작업이 제공됩니다. 유일한 비용은 패키지를 작성하고 유지 보수하는 데 걸리는 시간입니다. –

+0

링크 http://cheeso.members.winisp.net/srcview.aspx?dir=data&file=CopyData-TwoOledbDataAdapters.cs가 깨진 것 같습니다 – JFK

+0

@JFK, 나는 고마워 링크를 고쳤습니다. – Cheeso

관련 문제