ASP.NET Nhibernate Mysql表不存在

时间:2017-09-19 16:21:18

标签: mysql asp.net nhibernate

错误讯息:

  

表'db699401727.Site'不存在

     

描述:执行期间发生了未处理的异常   当前的网络请求。请查看堆栈跟踪了解更多信息   有关错误的信息以及它在代码中的起源。

     

异常详细信息:MySql.Data.MySqlClient.MySqlException:Table   'db699401727.Site'不存在

     

来源错误:

     

执行期间生成了未处理的异常   当前的网络请求。有关的来源和位置的信息   可以使用下面的异常堆栈跟踪来识别异常。

     

堆栈追踪:

     

[MySqlException(0x80004005):表'db699401727.Site'不存在]   MySql.Data.MySqlClient.MySqlStream.ReadPacket()+272
  MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow,   Int64的&安培; insertedId)+68
  MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId,Int32&   affectedRows,Int64& insertedId)+17
  MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId,Boolean   force)+110 MySql.Data.MySqlClient.MySqlDataReader.NextResult()   +761 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior)   行为)+1513
  MySql.Data.MySqlClient.MySqlCommand.ExecuteDbDataReader(的CommandBehavior   行为)+4
  System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader()   +14 NHibernate.AdoNet.AbstractBatcher.ExecuteReader(IDbCommand cmd)+279 NHibernate.Loader.Loader.GetResultSet(IDbCommand st,Boolean autoDiscoverTypes,Boolean callable,RowSelection selection,   ISessionImplementor session)+255
  NHibernate.Loader.Loader.DoQuery(ISessionImplementor session,   QueryParameters queryParameters,Boolean returnProxies,   IResultTransformer forcedResultTransformer)+450
  NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections(ISessionImplementor   session,QueryParameters queryParameters,Boolean returnProxies,   IResultTransformer forcedResultTransformer)+129
  NHibernate.Loader.Loader.DoList(ISessionImplementor session,   QueryParameters queryParameters,IResultTransformer   forcedResultTransformer)+154

     

[GenericADOException:无法执行查询[SELECT this_.ID as   ID39_0_,this_.Name为Name39_0_,this_.Title为Title39_0_,   this_.Text为Text39_0_,this_.IsVisibleMenue为IsVisibl5_39_0_,   this_.SitecategoryID as Sitecate6_39_0_,this_.SitecategoryOrder as   Sitecate7_39_0_ FROM Site this_] [SQL:选择this_.ID为ID39_0_,   this_.Name作为Name39_0_,this_.Title作为Title39_0_,this_.Text as   Text39_0_,this_.IsVisibleMenue为IsVisibl5_39_0_,   this_.SitecategoryID as Sitecate6_39_0_,this_.SitecategoryOrder as   Sitecate7_39_0_ FROM Site this _]]
  NHibernate.Loader.Loader.DoList(ISessionImplementor session,   QueryParameters queryParameters,IResultTransformer   forcedResultTransformer)+241
  NHibernate.Loader.Loader.ListIgnoreQueryCache(ISessionImplementor   session,QueryParameters queryParameters)+20
  NHibernate.Loader.Loader.List(ISessionImplementor session,   QueryParameters queryParameters,ISet 1 querySpaces, IType[] resultTypes) +79 NHibernate.Impl.SessionImpl.List(CriteriaImpl criteria, IList results) +632
NHibernate.Impl.CriteriaImpl.List(IList results) +40
NHibernate.Impl.CriteriaImpl.List() +58
NHibernate.Criterion.QueryOver
1.List()+50
  NHibernate.Criterion.QueryOver`1.NHibernate.IQueryOver.List()   +5 Therapeuten etc.Global.Application_BeginRequest(Object sender,EventArgs e)+294
  System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()   +141 System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)+69

我已经创建了一个带有表“站点”的数据库。但错误消息显示它正在搜索'db699401727.Site'(db699401727 =数据库名称)

查询:一个简单的ISession.QueryOver()。List()。计数
ISession.IsConnected是“true”。
NHibernate配置:

<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
  <session-factory>
    <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
    <property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property>
    <property name="connection.connection_string">Data Source=x; Database=db699401727; User ID=x; Password='x'; Convert Zero Datetime=True</property>
    <property name="dialect">NHibernate.Dialect.MySQL5Dialect</property>
  </session-factory>
</hibernate-configuration>

映射hbm.xml

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="TherapeutenSuche" namespace="TherapeutenSuche.Model">
  <class name="DtoSite" table="Site"> ...

我使用2台主机。那个给我看错了。其他作品结束

0 个答案:

没有答案