0
curently私は私のプロジェクトでMS SQL 2008でHibernateを使用しています。 私は、休止状態でストアドプロシージャを実行しようとしています。MS SQLストアドプロシージャでHibernate
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[GetUserDetails] (@userId int)
AS
BEGIN
SELECT * FROM dcf_user_m WHERE nuserid = @userId;
END
Exec dbo.GetUserDetails @userId=14
以下は実行のために休止状態コードです: は以下のSPです。
Session session = transactionManager.getSessionFactory().getCurrentSession();
Transaction transaction = session.getTransaction();
if(!transaction.isActive()){
session.beginTransaction();
}
Query query = session.createSQLQuery("Exec dbo.GetUserDetails @userId=:userId").setParameter("userId", 14);
List result = query.list();
for(int i=0; i<result.size(); i++){
com.majesco.msig.entity.UserInfo user = (com.majesco.msig.entity.UserInfo)result.get(i);
System.out.println(user.getUsername());
}
on query.list()以下のエラーが発生しています。
INFO: Reloading Context with name [/msig] is completed
Hibernate: Exec dbo.GetUserDetails @userId=?
org.hibernate.MappingException: No Dialect mapping for JDBC type: -9
at org.hibernate.dialect.TypeNames.get(TypeNames.java:76)
at org.hibernate.dialect.TypeNames.get(TypeNames.java:99)
at org.hibernate.dialect.Dialect.getHibernateTypeName(Dialect.java:592)
この問題を解決するには、どうすれば助かりますか。前もって感謝します !!!
返信ありがとうございましたが、これと同じエラーが発生しました... –
私は別の提案をしていますが、私は恐れています。 –