首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将连接到SpiceWorks SQLite数据库失败

将连接到SpiceWorks SQLite数据库失败
EN

Stack Overflow用户
提问于 2017-11-02 18:59:03
回答 2查看 524关注 0票数 0

Windows 2012

Server 2014

Visual 2013专业人员

SpiceWorks 7.5.00101 / SQLite 3.7.15.2

我正在尝试将Server / Visual连接到SpiceWorks SQLite数据库,以便我可以创建一个报告,显示当前打开的票证以及分配给它们的人员。这份报告是为前台前台接待员准备的,这样她就可以向信息技术部门的合适人选推荐入场券制作人员。我们不想让她在票里看到潜在的敏感数据。

我连工作都接不上!

我已经尝试了32位和64位sqlite驱动程序:http://www.ch-werner.de/sqliteodbc/

我使用C:\Windows\SysWOW64\odbcad32.exe来使用驱动程序创建32位 ODBC。

我使用C:\Windows\System32\odbcad32.exe来使用驱动程序创建64位 ODBC。

当我尝试使用32位DSN创建链接服务器或作为DataSource在SQL报表(SSRS)中使用时,我会得到以下错误:

代码语言:javascript
复制
The specified DSN contains an architecture mismatch between the Driver and Application

这意味着我使用了错误的odbcad32来创建它,但我没有(我已经重新创建了这个该死的东西好几次)。

当我尝试使用64位DSN时,我会得到以下错误:

代码语言:javascript
复制
IM006[Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed

我所能找到的只有一个HotFix,用于报告的错误https://support.microsoft.com/en-us/help/822841/fix-setting-of-connection-attribute-fails-when-you-use-connection-pool

  • 但是,当我试图安装修补程序时,它们会出错,说它们无法确定数据工具的版本。

我在安装了SpiceWorks软件/数据库的Windows 2008上尝试过这种方法,并在Windows2012w/ Server 2014中使用了完全限定的路径"\ \spwrks\c$Program (x86)\Spiceworks\db\spiceworks_prod.db“,并获得了相同的结果。

我已经尝试指向生产数据库和数据库的副本。我已经尝试卸载所有的SQLite驱动程序并从头开始。当32位失败时,我卸载、重新启动并安装64位的,它就会失败。

其中一个非常奇怪的部分是,如果我在Visual 2013中创建一个指向32位DSN的服务器资源管理器>数据连接,我可以看到所有的表,创建并执行针对它的查询,而不会出现任何问题。

一旦我发布(部署) SSRS报告并从浏览器中尝试它,我就会在浏览器中得到“指定的DSN包含驱动程序和应用程序之间的架构不匹配”错误。

快把我逼疯了。帮助!

我试着遵循这些链接上的说明:to/128624-export-spiceworks-sqlite-data-to-ms-sql

to/2271-create-ms-sql-linked-server-to-the-spiceworks-sqlite-server

to/28362-view-the-spiceworks-database-and-create-sql-reports

https://community.spiceworks.com/topic/132253-how-do-i-generate-a-spiceworks-report-using-sql-server-2008-reporting-services

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-08 18:38:48

在Robert的帮助下,解决方案是禁用SSIS项目属性页下的Run64BitRuntime选项(右键单击项目,选择属性,然后在配置属性>调试下,将Run64BitRuntime设置为False),因为SQLite是32位。

更多信息可以在这里找到:http://help.pragmaticworks.com/dtsxchange/scr/FAQ%20-%20How%20to%20run%20SSIS%20Packages%20using%2032bit%20drivers%20on%2064bit%20machine.htm

票数 0
EN

Stack Overflow用户

发布于 2017-11-03 23:31:24

只是一次更新

我已经做了一个SSIS作业,它首先复制现有的SQLite数据库,所以我不会干扰生产,然后将我需要的两个表(票证和用户)导入到2014年的Server中。然后,我想从这些桌子上做一份报告。

当我在Visual中运行作业时,它似乎有效,但一旦尝试用SQL代理安排作业,它就无法连接到ODBC。这让我想到了一个权限问题,因为在SSIS中运行它是可行的。我回到了SpiceWorks文件夹和数据库,并为每个人设置了完全控制的权限,但它仍然不想连接。

因为,我一直试图让它工作;就在一个小时前,我的产品和复制的SpiceWorks数据库被破坏了--不知道复制是否使它发生了什么。整件事都很..。“挑剔”。我没有给它写任何东西,只是试图连接和做两个简单的SELECT语句。

幸运的是,我有SpiceWorks数据库的备份副本,并且能够恢复它。

我从来没有遇到这么大的麻烦,只是试图从数据库中获取数据!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47082749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档