同步SQL SERVER 2000数据表到Windows CE的数据库(原创)

本文展示了使用PULL方法同步数据的应用实例。代码实现了将SQL SERVER 2000的表同步到Windows CE的数据库里,包含数据库创建、连接字符串设置、远程数据访问对象配置等操作,还处理了同步过程中可能出现的异常。

PULL方法同步数据应用一例


    Public Sub createDB()

        If Not File.Exists(ProgPath & "sddb.sdf") Or File.Exists(ProgPath & "sdinfodb.sdf") Then
            File.Delete(ProgPath & "sdinfodb.sdf")
            Dim sqlEngine As New SqlCeEngine("Data Source=/Program Files/hht/sdinfodb.sdf")
            sqlEngine.CreateDatabase()
        End If

        Dim toHHT As String = elemSetting(0).Item("hht").InnerText
        Dim varIP As String = elemSetting(0).Item("ip").InnerText
        Dim strCon As String
        Dim rda As SqlCeRemoteDataAccess = Nothing
        Dim LocalConnectionString As String = "Provider=Microsoft.SQLSERVER.OLEDB.CE.2.0;Data Source=/Program Files/sdinfodb.sdf"
        strCon = "Provider=sqloledb;Data Source=" & varIP & ";Initial Catalog=mydb;user id=sa;password=123"

        '如果在 OLEDBConnectionString 中设置 INTEGRATED SECURITY="SSPI" 以使用 Windows 身份验证,则 Internet 用户必须具有读取 SQL Server 表的权限。
        'strCon = "Provider=sqloledb;Data Source=" & varIP & ";Initial Catalog=mydb;Integrated Security=SSPI;"

        '将SQL SERVER 2000的表同步到Windows CE的数据库里
        Try
            rda = New SqlCeRemoteDataAccess

            rda.InternetUrl = "http://" & varIP & "/serviceWing/sscesa20.dll"
            rda.LocalConnectionString = LocalConnectionString
            rda.InternetLogin = ""
            rda.InternetPassword = ""
            'PULL的第四个参数是设置被同步的表是否有主健,RdaTrackOption.TrackingOffWithIndexes-没有,RdaTrackOption.TrackingOnWithIndexes-有
            rda.Pull("tabList", "SELECT * FROM tabList where bname LIKE '%" & name & "%';", strCon, RdaTrackOption.TrackingOffWithIndexes, "Error Table")
            rda.Pull("tabInfo", "SELECT * FROM tabInfo;", strCon, RdaTrackOption.TrackingOffWithIndexes, "Error Table")

            rda.Dispose()

            MsgBox("Create Success!",MsgBoxStyle.Information)
        Catch ex As Exception
            MsgBox("Create Error!", MsgBoxStyle.Critical)
        Finally
            rda.Dispose()
        End Try
    End Sub

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值