0

在这件事上,我已经走到了尽头。应该很简单。我只需要知道这个连接字符串有什么问题:

dbc.open ("Driver={SQL Server}; Data Source = ServerName; Initial Catalog = InitialDB; " "User ID = Username; Password = Password;")

运行该行时出现此错误:

[Microsoft][ODBC Driver Manager] 未找到数据源名称且未指定默认驱动程序

我知道 ServerName 已启动并接受连接,我知道 InitialDB 存在,我知道用户 ID 和密码对数据库有效。我错过了什么?

4

7 回答 7

3

在记事本中创建文件 anyname.udl - 让它为空。在资源管理器中单击它后-您将看到一个对话框以创建 OLEDB 连接字符串,选择预期的驱动程序和所有连接参数,确保“允许保存密码”= True。按确定。然后再次用记事本打开文件。内容是有效的连接字符串

于 2009-08-07T15:57:39.933 回答
1

试试这个...

dbc.open ("Provider=SQLOLEDB; Driver={SQL Server}; Data Source = ServerName; Initial Catalog = InitialDB; User ID = Username; Password = Password; Network Library=dbmssocn;")
于 2009-08-07T16:00:05.170 回答
1

正如有人已经指出的那样,udl 是创建 conn 字符串的最简单方法 - 这是一个讨论它的链接。http://www.4guysfromrolla.com/webtech/070400-1.shtml

于 2009-08-07T16:01:55.323 回答
1

如果您使用的是 ADOdb,您可能想尝试

"Provider=SQLNCLI10;Server=SERVER;Database=DATABASE;Uid=USERNAME;Pwd=PASSWORD"

对于 SQL Server 2008 Native Client 或

"Provider=SQLNCLI;Server=SERVER;Database=DATABASE;Uid=USERNAME;Pwd=PASSWORD"

用于 SQL Server 2005 本机客户端。

对于 ODBC,使用

"Driver=SQL Server Native Client 10.0"

对于 SQL Server 2008 Native Client 或

"Driver=SQL Native Client"

用于 SQL Server 2005 本机客户端。

于 2009-08-07T16:05:58.107 回答
0

字符串中间的“”是什么?

于 2009-08-07T15:55:01.123 回答
0

您的连接字符串似乎混合了 ODBC 和 OLEDB。我建议访问http://www.connectionstrings.com/并为所需的提供者找到正确的语法。

你的

"Driver={SQL Server}; Data Source = ServerName; Initial Catalog = InitialDB; " "User ID = Username; Password = Password;"

ODBC

"Driver={SQL Server};Server=ServerName;Database=InitialDB;Uid=Username;Pwd=Password;"

OLEDB

"Provider=sqloledb;Data Source=ServerName;Initial Catalog=InitialDB;User Id=Username;Password=Password;"
于 2009-08-07T16:04:59.980 回答
-1

你有视觉工作室吗?

连接到数据库服务器,并找到要连接的数据库。

右键单击,选择属性。您到数据库的连接字符串就在那里。复制到任何你想要的地方。-- 应该在网络配置中,但如果您愿意,可以将其直接粘贴到代码中。

于 2009-08-07T15:55:59.797 回答