无法执行查询[从tkt中选择统计信息,其中tkt ='12345'] [英] Could Not execute Query [ select stat from tkt where tkt ='12345']
问题描述
你好,
我正在使用NhiberNate和VB.NET
我的应用程序中出现无法执行查询"错误.
我的代码如下.
hello ,
i am working with NhiberNate and VB.NET
i am getting "could not execute Query" error in my applicaion.
my code is as follows.
Public Function GetTicketStatus(ByVal tkt As String) As String
Try
Dim strQuery As String = "Select stat from tkt where tkt = ''" & tkt & "''"
Dim resultData = GetISession.CreateSQLQuery(strQuery).List()
If resultData IsNot Nothing AndAlso resultData.Count > 0 Then
Return resultData(0).ToString()
Else
Return String.Empty
End If
Catch ex As Exception
End Try
End Function
堆栈跟踪如下所示
The stack Trace is as follows
Message: could not execute query
[ Select stat from tkt where tkt = = ''12345'' ]
[SQL: Select stat from tkt where tkt = = ''12345'']
Stack Trace :
at NHibernate.Loader.Loader.DoList(ISessionImplementor session, QueryParameters queryParameters) in E:\sources\NHibernate\src\NHibernate\Loader\Loader.cs:line 1660
at NHibernate.Loader.Loader.ListIgnoreQueryCache(ISessionImplementor session, QueryParameters queryParameters) in E:\sources\NHibernate\src\NHibernate\Loader\Loader.cs:line 1575
at NHibernate.Loader.Loader.List(ISessionImplementor session, QueryParameters queryParameters, ISet`1 querySpaces, IType[] resultTypes) in E:\sources\NHibernate\src\NHibernate\Loader\Loader.cs:line 1569
at NHibernate.Loader.Custom.CustomLoader.List(ISessionImplementor session, QueryParameters queryParameters) in E:\sources\NHibernate\src\NHibernate\Loader\Custom\CustomLoader.cs:line 272
at NHibernate.Impl.SessionImpl.ListCustomQuery(ICustomQuery customQuery, QueryParameters queryParameters, IList results) in E:\sources\NHibernate\src\NHibernate\Impl\SessionImpl.cs:line 2107
at NHibernate.Impl.SessionImpl.List(NativeSQLQuerySpecification spec, QueryParameters queryParameters, IList results) in E:\sources\NHibernate\src\NHibernate\Impl\SessionImpl.cs:line 2090
at NHibernate.Impl.SessionImpl.List(NativeSQLQuerySpecification spec, QueryParameters queryParameters) in E:\sources\NHibernate\src\NHibernate\Impl\SessionImpl.cs:line 2066
at NHibernate.Impl.SqlQueryImpl.List() in E:\sources\NHibernate\src\NHibernate\Impl\SqlQueryImpl.cs:line 127
at BusinessClasses.TicketHeaderBll.GetTicketStatus(String tkt) in J:\BusinessClasses\TicketHeaderBll.vb:line 4803
Inner Exception : - Object reference not set to an instance of an object.
在内部异常中,它是对象引用未设置为对象的实例".
在我的数据库和我的机器上可以正常工作.但是在极少数情况下,这种情况会出现.
任何人都可以解释一下如何解决它.
in inner exception it is "Object reference not set to an instance of an object" .
with my database and in my machine it is correctly working.but in rare situations this is coming.
any one can explain please how to resolve it.
推荐答案
在某些情况下表不包含行的情况下可能会发生错误.
The error may occur in case table does not contain rows for some conditions.
可能有几个原因:
There could be several reasons:
- 表
tkt
不存在 - 字段
tkt
不存在 - 字段
tkt
是数字数据类型(不是varchar)
- Table
tkt
doesnt'' exists - Field
tkt
doesn''t exists - Field
tkt
is numeric data type (not varchar)
请检查表和字段的名称(注意:在使用表名称的主题中:"Table1"而不是"tkt").
如果tkt
字段是数字数据typ,则应以这种方式编写查询:
Please check the name of table and field (NOTE: in a subject you have used table name: ''Table1'' instead ''tkt'').
If tkt
field is numeric data typ , you should write query in that way:
SELECT [stat]
FROM Table1 where tkt = 1234
这篇关于无法执行查询[从tkt中选择统计信息,其中tkt ='12345']的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!