我配置了系统DSN并测试正常:
Microsoft SQL Server Native Client版本10.00.2531
数据源名称:xxx数据源
描述:xxx服务器:SERVER \ SHARE
使用集成安全性:是数据库:
yyy语言:(默认)数据
加密:无信任服务器
证书:无多重有效结果
设置(MARS):无镜像服务器:
翻译字符数据:是长日志
运行查询:无日志驱动程序
统计:不使用区域设置:
否使用ANSI引用标识符:是
使用ANSI Null,Paddings和Warnings:
是
我在Windows 7 64位上工作。在x86模式下运行的代码。
在Excel中,我只能连接到用户DSN,系统DSN不会出现。 我也试过使用DSN,它在excel中工作,但在c#
中没有我将ODBC的权限更改为regedit中的所有人。
我在c#代码中使用此连接字符串:Data Source = xxx; Initial Catalog = yyy; Integrated Security = SSPI;
我有这样的错误:ERROR [IM002] [Microsoft] [ODBC驱动程序管理器]找不到数据源名称且未指定默认驱动程序
有什么想法吗?
提前致谢
答案 0 :(得分:2)
我实现了在没有ODBC的情况下使用该连接字符串连接到数据库:
Driver={SQL Server Native Client 10.0};Server=xxx;Database=zzz;Trusted_Connection=yes;
谢谢!
答案 1 :(得分:2)
此处发布的初始问题很可能是因为已经创建了64位ODBC数据源(通过控制面板使用ODBC管理器),并且该应用程序仅为32位。
换句话说 -
32位应用程序需要32位ODBC驱动程序和32位DSN(C:\ Windows \ SysWOW64 \ odbcad32.exe)
64位应用程序需要64位ODBC驱动程序和64位DSN(C:\ Windows \ System32 \ odbcad32.exe)
32和64位组件不能在这里互换!!