创build与SQL Server 2008 Express的ODBC连接时出错

创build系统DSN时,出现错误:

Connection failed: SQLState: '08001' SQL Server Error: 2 [Microsoft][SQL Server Native Client 10.0]Named Pipes Provider: Could not open a connection to SQL Server [2]. Connection failed: SQLState: 'HYT00' SQL Server Error: 0 [Microsoft][SQL Server Native Client 10.0]Login timeout expired 

我正在运行Vista家庭高级版64位SP2,并安装了SQL Server 2008 Express Advanced,没有错误。 我将在本地使用数据库来安装在同一台PC上的应用程序。

我能够使用Windows身份validation(我的Windows帐户是本地pipe理员的成员)与SQL Server Management Studio成功连接,并且可以使用默认所有权成功创build数据库(默认为我的Windows帐户)。 我也可以使用SQL身份validation和SA帐户连接使用SSMS。

SQL Serverconfigurationpipe理器显示为SQL Native Client 10.0 ConfigurationSQL Native Client 10.0 Configuration (32bit)SQL Server Network Configuration (SQLEXPRESS)启用了Shared MemoryTCP/IPNamed Pipes

SQL Server (SQLEXPRESS)SQL Server Reporting Services (SQLEXPRESS)服务正在运行。

当我创build系统DSN时,我的驱动程序选项是SQL serversqlsrv32.dll 4-10-09),它提供了一个通用向导, SQL Server Native Client 10.0sqlncli10.dll 7-10-08) SQL Server 2008向导。 我select后者。

我input名称,描述,并尝试MyPCName127.0.0.1服务器名称(浏览什么都没有)。 单击“下一步”后,我将其保留在集成Windows身份validation中,并将“连接到服务器”保留为检查其他选项。 点击下一步后,我得到上面的错误。 我使用SQL身份validation和SA帐户得到相同的错误。

我知道这可能是一个简单的答案,(权限问题?),我是一个SQL noob,所以我感谢任何东西,将指向正确的方向。
谢谢!

我想到了。 而不是MyPCName ,我需要使用MyPCName\SQLExpress 。 在过去,我一直只是使用电脑的名字,从来没有问题。 也许2008年是不同的。

这是实例名称( Servername\instance )。 可能在过去你有默认的实例(通常没有名字); 现在你需要,因为许多实例可以驻留在同一个服务器上,所以这是必须的。