查看/修改 SQL Server CE 2.0?

Posted

技术标签:

【中文标题】查看/修改 SQL Server CE 2.0?【英文标题】:View/Modify SQL Server CE 2.0? 【发布时间】:2012-04-06 14:24:17 【问题描述】:

我有一个我认为是 SSCE 数据库的文件,但我不确定。我说我不确定,因为我尝试了各种工具来打开文件,但都失败了。 VS2010 SQL Server Compact Edition 4 报告 "Incompatible Data Version. If this was a compatible file, run repair. For other cases refer to documentation. [ db version = 0,Requested version = 0,File name = template.sdf ]" 我使用了错误的版本。 VS2010 SQL Server Compact Edition 3.5 报告"This is not a valid SQL Server Compact Database file or this file version is not supported by current SQL Server Compact Edition."

这是文件的标题:

........SSCE 数据库 ..........KÿÕ.´'N*äq0''á..=ß.\F³bê\I@-.–,S¾Bš–õûcp ∼–”é>•@l‚“:aƒÍ.凂šÓüpT>I9‹ß.‰Ò…Ñ=¿]`_Ò#"”îb„ÀÜO,Ú.BRa´©¡ÑX‚æ.- ..YèB.0r.9VP.!º™Ú..—»Ñùa.8ié.Ç.z).jÚˆž.û.!.ƒªí°.A¯7©šþÊ4‹~±ÍRaÜç.(.À.ðÁq/ .,V®Ï0.ý½'.m2(Š;Júl#º3¤¼Ùú(.dÃC.WHôÙj½™¡f.^û¯ÆŸ¹.1—ê‚rO(qà.Ìø(Ò"¤~gž!¸ö ..¦...lØ....1.0

十六进制:

00 00 00 00 00 01 00 00 53 53 43 45 20 44 61 74 61 62 61 73 65 20 20 00 00 00 00 00 02 00 00 00 00 4B FF D5 AD B4 27 4E 2A E4 E4 71 3 07 01 3D DF 11 5C 46 B3 62 EA 5C 49 40 2D 04 96 82 53 BE 42 9A 96 F5 FB 63 70 98 96 94 E9 3E 95 40 6C 82 93 3A 61 83 CD 8D E5 3 87 7B 542 9 D FC 7 3E 49 39 8B DF 0D 89 D2 85 D1 3D BF 5D 60 5F D2 23 22 94 EE 62 84 C0 DC 4F 2C DA 8D 42 52 61 B4 A9 A1 D1 58 82 E6 0A 2D 09 16 59 E8 42 04 30 7 56 50 8D 21 BA 99 DA 00 14 97 BB D1 F9 61 AD 38 69 E9 1C C7 0E 7A 29 8D 6A DA 88 9E 05 FB 05 21 1A 83 AA ED B0 03 41 AF 37 A9 9A CD FE CA 34 8B 98 B1 52 61 DC E7 01 28 1D C0 0C F0 C1 71 2F 1F 2C 56 AE CF 30 08 FD BD 91 00 6D 32 28 8A 3B 4A FA 6C 23 BA 33 A4 BC D9 FA 28 81 64 C3 43 1C 67 48A F4 BD 99 A1 66 00 88 FB AF 7B C6 9F B9 10 31 97 EA 82 72 4F 28 71 E0 18 CC F8 28 D2 22 A4 7E 67 9E 21 B8 F6 81 1E A6 85 6C D8 01 00 0000 31 2E 30 p>

我很确定该文件没有密码保护或加密,因为我可以在十六进制编辑器中向下滚动并查看文本字段的所有内容。

有没有人对打开这个文件有任何建议,或者更好的是,用 .Net 程序处理它?

更新:我现在知道它是一个 SQL Server Compact 2.0 版数据库。 (感谢@ErikEJ)现在我需要弄清楚如何从 VS2010 打开和更新它。我仍然对这方面的想法持开放态度。我尝试了一个连接字符串:Provider=Microsoft.SQLServer.OLEDB.CE.2.0;Data Source=template.sdf,但我收到了错误:The 'Microsoft.SQLServer.OLEDB.CE.2.0' provider is not registered on the local machine.

【问题讨论】:

【参考方案1】:

从此处http://sqlcetoolbox.codeplex.com/releases/view/69910 独立下载 SQL Server Compact Toolbox,并使用“检测 SQL Server Compact 文件版本”功能测试版本。某些 Windows 应用程序使用的某些内部文件版本无法使用标准工具打开。

【讨论】:

帮助很大,现在你知道如何从 VS2010 访问它了吗?我尝试了一个连接字符串:Provider=Microsoft.SQLServer.OLEDB.CE.2.0;Data Source=template.sdf,但收到错误:The 'Microsoft.SQLServer.OLEDB.CE.2.0' provider is not registered on the local machine. 如果是2.0版本的数据库文件,只能从Windows Mobile/Windows CE设备或模拟器访问。您可以使用 www.Primeworks-mobile.com 中的工具将数据移动到桌面。 感谢您的帮助。我使用了你提到的工具,收到错误The server does not have the SQL CE 2.0 database engine installed. Please install and try again.你知道我在哪里可以得到满足这个要求的安装源吗? 建议您联系工具供应商...据我所知,您需要在设备上安装软件。 我在我的设备上安装了该软件……但供应商已停业。那好吧。感谢您的帮助。

以上是关于查看/修改 SQL Server CE 2.0?的主要内容,如果未能解决你的问题,请参考以下文章

Sql Server CE 3.5 和 .NET Compact Framework 2.0 SP2

如何只修改一次sql server ce的列数据类型的长度?

在 SQL Server Management Studio for SQL CE 数据库中查看所有 ntext 列文本

如何在 Visual Studio 2012 中查看 SQL Server CE 系统表

SQL Server Management Studio(SSMS)修复来解决SSMS找不到的问题

如何解释此 SQL Server CE 行为 - 不更新