日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle插入后查不到,Oracle表刚插入数据,但是在MyEclipse中却查不到(代码完全正确)...

發布時間:2024/10/12 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle插入后查不到,Oracle表刚插入数据,但是在MyEclipse中却查不到(代码完全正确)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近在做項目的時候發現了一個有趣的問題:

在plsqldeveloper中打開一個sql會話窗口,然后 插入一條數據(或者刪、改操作),但是在MyEclipse中用代碼卻查詢不到,而且數據已經插入進去了,這是為什么呢?

1.用plsqldeveloper插入數據

這里有張表mydept,然后我向其中插入一條數據,查詢了一下,插入成功,沒問題

2.查詢數據

打開MyEclipse,我這里使用了Hibernate查詢的數據,但是沒有查出來

Session session=HibernateUtil.currentSession();

Transaction tx=session.beginTransaction();

Criteria criteria=session.createCriteria(Dept.class);

List list=criteria.list();

for (Dept dept : list) {

System.out.println(dept.getDeptName());

}

tx.commit();

HibernateUtil.closeSession();

再換用sql plus查詢一下:

也是沒有查詢到剛插入的數據!這。。。好奇怪啊!當然,這一點都不奇怪。

我們知道,plsqldeveloper 每新建一個sql會話窗口,就相當于創建了一個事務,所以,當窗口沒有關閉的時候,事務并沒有提交,所以,數據庫中的數據也不會發生改變,但是,在plsqldeveloper中如果插入之后立即進行查詢是會顯示出來的,它會首先取出操作之前的數據,然后對操作進行對應的模擬顯示,而事實上數據庫中的數據還沒有進行持久化改變,所以用MyEclipse和sqlplus不會查詢到新數據;

解決辦法:

①執行完sql語句以后手動關閉當前的sql窗口,窗口一關閉,它會默認的提交事務,當然,這方式很........?-_-|||

②sql命令后面加入“commit;”命令,通過語句提交事務

③點擊plsql developer的這個按鈕,提交事務(或F10),如圖:

當然這個問題只適合為我們這些菜鳥級的人物提個醒,大神請饒過,小弟如有說明不正確的地方,還望大神指出。

總結

以上是生活随笔為你收集整理的oracle插入后查不到,Oracle表刚插入数据,但是在MyEclipse中却查不到(代码完全正确)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。