无法连接到SQL Server 2008的实例

我正尝试通过使用C#的NHibernate连接到SQL Server 2008服务器实例。 我无法这样做。

我已经成功地通过Hibernate使用java连接到相同的实例。 所以我确信我的SQL Server 2008配置设置没有问题。 我也设法连接到SQL Server 2008 Express。

这是hibernate.cfg.xml

<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
  <session-factory>

    <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
    <property name="connection.connection_string">server=(local)SUNIL,3067;Initial Catalog=NHibernate101;User ID=sunil;Password=mypassword;</property>
    <property name="show_sql">true</property>
    <property name="dialect">NHibernate.Dialect.MsSql2008Dialect</property>
    <property name="cache.use_query_cache">false</property>
    <property name="adonet.batch_size">100</property>
    <property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
    <mapping assembly="Infrastructure" />
  </session-factory>
</hibernate-configuration>

这是错误消息:

测试方法NHibernate101.Tests.RepositoriesTest.CanCreatePost抛出异常:System.Data.SqlClient.SqlException:用户'sunil'登录失败。

这是堆栈跟踪:

System.Data.SqlClient.SqlInternalConnection.OnError(SqlException异常,布尔breakConnection)System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,SqlCommand cmdHandler,SqlDataReader dataStream,BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj)System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo,String newPassword,Boolean ignoreSniOpenTimeout,TimeoutTimer timeout,SqlConnection owningObject)System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover( ServerInfo serverInfo,String newPassword,Boolean redirectedUserInstance,SqlConnection owningObject,SqlConnectionString connectionOptions,TimeoutTimer timeout)System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject,TimeoutTimer timeout,SqlConnectionString connectionOptions,String newPass 字段,布尔型重定向用户实例) DbConnection拥有连接池),DbConnection owningConnection)System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection,DbConnectionPool pool,DbConnectionOptions options)System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject )System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnect (方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言,方言方言, IConnectionHelper connectionHelper)NHibernate.Tool.hbm2ddl.SchemaMetadataUpdater.Update(ISessionFactory sessionFactory)NHibernate.Impl.SessionFactoryImpl..ctor(配置cfg,IMapping映射,设置设置,EventListeners监听器)NHibernate.Cfg.Configuration.BuildSessionFactory()Core.Domain。 D: dotnet tutorials NHibernate101 Core Domain Repositories NHibernateHelper.cs中的Repositories.NHibernateHelper.get_SessionFactory():第22行Core.Domain.Repositories.NHibernateHelper.OpenSession() Core Domain Repositories NHibernateHelper.cs:line 30 Core.Domain.Repositories.CategoryRepository.Core.IRepository.Save(Category entity )在D: dotnet tutorials NHibernate101 Core Domain Repositories CategoryRepository.cs:第17行NHibernate101.Tests.RepositoriesTest.CanCreatePost()在D: DOTNet NHibernate101 NHibernate101.Tests RepositoriesTest.cs:69行


错误消息看起来很明显:

System.Data.SqlClient.SqlException: 用户'sunil'登录失败

这将表明用户在连接字符串中指定

  • 没有权限甚至连接到服务器
  • 没有权限连接到连接字符串中指定的数据库
  • 连接字符串中指定了错误的密码
  • 所以我会尝试修复您的连接字符串以确保您可以登录:

    server=(local)SUNIL,3067;Initial Catalog=NHibernate101;
       User ID=sunil;Password=mypassword;
    
  • 你的SQL Server实例是否真的叫做SUNIL并驻留在本地机器上?
  • 你的SQL Server真的使用端口3067吗? (这不是默认的)
  • 你的数据库真的叫NHibernate101
  • 该服务器上是否存在名为sunil的登录名?
  • 那个登录的密码真的是mypassword
  • 该用户是否因某种原因未被“阻止”或被锁定?
  • NHibernate101是否存在sunil用户?
  • 你能从SQL Server Management Studio连接到那个服务器, 那个数据库,以及那个登录名和密码吗?

    链接地址: http://www.djcxy.com/p/56713.html

    上一篇: Cannot connect to an instance of SQL Server 2008

    下一篇: Windows 8.1 service can't connect to SQL Server database