Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.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 odbc连接字符串dosen';我不能在Windows7上工作_Vb.net_Odbc_Connection String - Fatal编程技术网

Vb.net odbc连接字符串dosen';我不能在Windows7上工作

Vb.net odbc连接字符串dosen';我不能在Windows7上工作,vb.net,odbc,connection-string,Vb.net,Odbc,Connection String,我使用ODBC将我的应用程序(控制面板->管理工具->ODBC->DSN)连接到sql server 2008,并使用windows身份验证 它在windows xp上运行得非常完美 但现在我在windows7和SQLServer2008上使用SQLServer身份验证运行它。 当我建立DSN并查询连接时,它是ok的,我收到了这条消息(测试成功完成!) 但是当我运行应用程序时,我得到了这个错误 (ERROR [28000] [Microsoft][ODBC SQL Server Driver][

我使用ODBC将我的应用程序(控制面板->管理工具->ODBC->DSN)连接到sql server 2008,并使用windows身份验证 它在windows xp上运行得非常完美

但现在我在windows7和SQLServer2008上使用SQLServer身份验证运行它。 当我建立DSN并查询连接时,它是ok的,我收到了这条消息(测试成功完成!)

但是当我运行应用程序时,我得到了这个错误

(ERROR [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user ''. ERROR [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user ''.)
DSN有些问题,但我不知道是什么问题

可能使DSN在Windows7中有所不同

非常感谢

我想了想,我发现可能我的密码没有为我的用户保存,当我做那个DSN的时候


如何保存它?

它不是64位Win7和32位应用程序吗

如果是这样,您必须在32位Windows子系统中配置ODBC DSN。64位版本的Windows中有两个版本的
odbcad32.exe
。在
c:\windows\system32
中,您可以找到为64位应用程序配置ODBC的64位版本,在
c:\windows\syswow64
中,您可以使用32位版本为32位程序配置ODBC。

我的DSN和以前一样。但是当我不想在我的应用程序中使用它(通过sql身份验证连接到sql server)时,我应该传递(用户ID和密码,如下所示)


Dim con作为新的Odbc.OdbcConnection(“dsn=dsnName;UID=sa;PWD=123”)

通常需要连接字符串、用户名和密码进行Odbc连接。管理面板中的用户名和密码仅用于连接测试,每个应用程序都应提供用户名和密码。在某些环境中,用户名和密码是连接字符串。例如,我使用Python
odbc
模块,其中通过一个参数进行连接:


您可以在此处找到有关SQL Server 2008连接字符串的更多信息:

我刚刚移植了一个vb6应用程序,它使用经典ado和DSN获取SQL数据,从而赢得Server 2008 R2和SQL Server 2008 R2。下面是两个链接,当您有此问题时可以查看。基本上,您运行一个UDL测试,该测试钩住安装在操作系统上的oledb驱动程序,让您知道是否真的可以通过驱动程序访问db。最美妙的是,在这些链接中创建的“UDL”文件将包含更新应用程序所需的确切连接字符串。您可以复制该连接字符串来代替旧的连接字符串,并放弃在计算机上设置新的DSN

据我所见,oledb驱动程序现在除了需要其他属性外,还需要在连接字符串中设置provider和datacompatibilitylevel变量

真正让您欣赏sqlClient类。哈

conn = odbc.odbc('dsn_alias/user/password')