Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 脱机使用Microsoft sync framework时如何查询本地数据库?_Vb.net_Sql Server 2008_Sql Server Ce_Microsoft Sync Framework - Fatal编程技术网

Vb.net 脱机使用Microsoft sync framework时如何查询本地数据库?

Vb.net 脱机使用Microsoft sync framework时如何查询本地数据库?,vb.net,sql-server-2008,sql-server-ce,microsoft-sync-framework,Vb.net,Sql Server 2008,Sql Server Ce,Microsoft Sync Framework,我有一个基于微软同步框架的应用程序。数据输入并存储在使用同步框架向导配置的数据库中。据我所知,这会将服务器数据库的克隆放在本地目录中,数据库版本为SQL Compact edition 用户有时会脱机使用应用程序,需要从一个数据库获取信息以填充另一个数据库。他们将从工具数据库中选择工具,并从设备数据库中选择具有特定参数的设备。为了做到这一点,我需要能够在脱机时查询本地数据库 首先,我尝试使用设置中的本地ConnectionString填充组合框 Dim conn As New SqlConnec

我有一个基于微软同步框架的应用程序。数据输入并存储在使用同步框架向导配置的数据库中。据我所知,这会将服务器数据库的克隆放在本地目录中,数据库版本为SQL Compact edition

用户有时会脱机使用应用程序,需要从一个数据库获取信息以填充另一个数据库。他们将从工具数据库中选择工具,并从设备数据库中选择具有特定参数的设备。为了做到这一点,我需要能够在脱机时查询本地数据库

首先,我尝试使用设置中的本地ConnectionString填充组合框

Dim conn As New SqlConnection(My.Settings.ClientDatabaseConnectionString)
conn.Open()
Dim dat As SqlDataAdapter = New SqlDataAdapter("SELECT Distinct InstrumentType FROM CreateScriptTable", conn)
Dim dt As New DataSet
dat.Fill(dt, "TestScriptTable")
cbInst.DataSource = dt.Tables("TestScriptTable").DefaultView
cbInst.DisplayMember = "InstrumentType"
cbInst.ValueMember = "InstrumentType"
接下来,由于它是SQL ce数据库,我使用了SQLCeConnection:

Dim conn As SqlCeConnection
conn = New SqlCeConnection("Data Source=|DataDirectory|\TestsDatabase4.sdf;Max Database Size=2047")
Dim dat As SqlCeDataAdapter = New SqlCeDataAdapter("SELECT Distinct InstrumentType FROM TestScriptTable", conn)
Dim dt As New DataSet
dat.Fill(dt, "TestScriptTable")
cbInst.DataSource = dt.Tables("TestScriptTable").DefaultView
cbInst.DisplayMember = "InstrumentType"
cbInst.ValueMember = "InstrumentType"
本地连接字符串的各种格式被传递到SQLConnection()中,包括删除
Max Database Size=2047
这两种方法都不起作用,所以我尝试在教程之后的运行时更改连接字符串 这也不起作用,所以目前我无法随意脱机检索任何数据。
有人对此有什么想法吗?谢谢。

错误消息?在连接字符串中提供数据库文件的完整路径。没有错误消息,但数据集为空。我可以查询远程服务器,但是当我查询本地版本时,我没有得到任何数据。完整路径是否会相对于我的机器,因此不会在另一台机器上工作?我尝试过这个方法,但结果仍然是一个空数据集。如果出现错误,则它将查找在连接字符串上指定的数据库…您是否检查了连接到正确的数据库?检查你的项目中有多少SDF,特别是在bin文件夹中…你是对的,我在项目中有一些散乱的数据库-现在解决了,谢谢。