다음을 통해 공유


방법: 데이터 밀어넣기(프로그래밍 방식)

이 항목에서는 SqlCeRemoteDataAccess 클래스를 사용하여 Microsoft SQL Server 2005 Compact Edition(SQL Server Compact Edition) 데이터베이스의 데이터를 Microsoft SQL Server 데이터베이스로 밀어넣는 방법에 대해 설명합니다. SqlServerCe 네임스페이스 사용에 대한 자세한 내용은 SqlServerCe 네임스페이스 참조 설명서를 참조하십시오.

RDA(Remote Data Access)를 사용하여 데이터를 밀어넣으려면 다음과 같이 하십시오.

  1. SqlCeRemoteDataAccess 개체를 초기화하고 연결 속성을 설정합니다.

    SqlCeRemoteDataAccess rda = new SqlCeRemoteDataAccess("https://www.adventure-works.com/sqlmobile/sqlcesa30.dll", "Data Source=MyDatabase.sdf");
    
  2. Push 메서드를 호출하여 SQL Server 데이터베이스에 데이터와 연결 문자열을 밀어넣을 로컬 SQL Server Compact Edition 테이블 이름을 전달합니다. 또한 사용할 일괄 처리 옵션을 지정할 수도 있습니다.

    rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn);
    

이 예제에서는 SQL Server Compact Edition 데이터베이스의 MyLocalITable 테이블 데이터를 MySqlServer라는 SQL Server 인스턴스의 AdventureWorks 데이터베이스로 밀어넣는 방법을 보여 줍니다.

string rdaOleDbConnectString = @"Provider=SQLOLEDB; Data Source=MySqlServer;
    Initial Catalog=AdventureWorks; User Id=username;
    Password = <password>";

        // Initialize RDA Object
        //
        SqlCeRemoteDataAccess rda = null;

        try
        {
            // Try the Push Operation
            //
            rda = new SqlCeRemoteDataAccess(
                "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll",
                "Data Source=MyDatabase.sdf");

            rda.InternetLogin = "MyLogin";
            rda.InternetPassword = "<password>";

            rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn);

            // or, try this overload:
            //
            // rda.Push("MyLocalTable", rdaOleDbConnectString);
        }
        catch (SqlCeException)
        {
            // Handle errors here
            //
        }
        finally
        {
            // Dispose of the RDA Object
            //
            rda.Dispose();
        }
Dim rdaOleDbConnectString As String = _
 "Provider=SQLOLEDB; "Data Source=MySqlServer;Initial Catalog=AdventureWorks; "
            "User Id=username;Password = <password>"

        ' Initialize RDA Object
        '
        Dim rda As SqlCeRemoteDataAccess = Nothing

        Try
            ' Try the Push Operation
            '
            rda = New SqlCeRemoteDataAccess( _
                "https://www.adventure-works.com/sqlmobile/sqlcesa30.dll", _
                "Data Source=MyDatabase.sdf")

            rda.InternetLogin = "MyLogin"
            rda.InternetPassword = "<password>"

            rda.Push("MyLocalTable", rdaOleDbConnectString, RdaBatchOption.BatchingOn)

            ' or, try this overload:
            '
            ' rda.Push("MyLocalTable", rdaOleDbConnectString)

        Catch
            ' Handle errors here
            '
        Finally
            ' Dispose of the RDA Object
            '
            rda.Dispose()
        End Try

참고 항목

개념

RDA(Remote Data Access) 소개
클라이언트에서 서버로 데이터 밀어넣기

도움말 및 정보

SQL Server Compact Edition 지원 정보 보기