代碼如下:
? Configuration config = new Configuration();
??????????????? config.AddAssembly("TestCleanSnow");
???????????????
???????????????
??????????????? ISessionFactory factory = config.BuildSessionFactory();
??????????????? ISession session = factory.OpenSession();
??????????????
??????????????? TestNhibernate tn = new TestNhibernate();
??????????????? tn.Id = Decimal.Parse("2");
??????????????? tn.Name = "terry wang";
?????????????? ITransaction trans = session.BeginTransaction();
?????????? try
?????????? {?????????????
?????????????? session.Save(tn);
?????????????? trans.Commit();
??????????????
?????????????? Console.WriteLine("Insert Success!");
?????????? }
?????????? catch (Exception ex)
?????????? {
?????????????? trans.Rollback();
?????????????? Console.WriteLine(ex.Message);
?????????? }
?
執行到trans.Commit()時出錯,
出錯信息如下:
NHibernate.HibernateException :"could not insert: [TestCleanSnow.TestNhibernate][SQL: INSERT INTO TEST_NHIBERNATE ([NAME], ID) VALUES (?, ?)]"}
InnerText:ORA-00928: 缺少 SELECT 關鍵字
我在控制臺調試看到輸出NHibernate的語句是: INSERT INTO TEST_NHIBERNATE ([NAME], ID) VALUES (:p0, :p1); :p0 = 'terryerry wang', :p1 = '2'
請問是哪里出錯?