Re: [SQL ] Insert當下select出當筆資料

看板Database作者 (可愛小孩子)時間7年前 (2017/04/22 20:10), 編輯推噓4(401)
留言5則, 3人參與, 最新討論串2/2 (看更多)
幫你查了一下 應該跟 http://goo.gl/L5aZpV 這篇有關 查詢關鍵字: oracle returning into ※ 引述《fire1017 (鳥鳴啾啾)》之銘言: : 資料庫名稱:Oracle : 資料庫版本:11g : 內容/問題描述: : 目前遇到一個問題,我想在Insert一筆資料時, : 同時select出自己的PK,好讓自己能再透過程式補上BLOB資料, : (會這麼麻煩是因為我的BLOB是一張QRCode,有獨特性) : 但問題在我的資料PK是透過sequence產生的, : 我無法預先知道下一筆PK會是長怎樣(可能中間出狀況就跳號), : 導致我再進行select時無法用insert進的PK來作為條件, : 我目前想到的作法是,在table增加一個時間欄位紀錄Insert當下的時間, : 再透過where最新時間的方式來取回原來那筆資料, : 但想想覺得有點不夠俐落,而且不確定是否摻雜其他風險在 : 想請問版上的高手們是否有更好的解決辦法? : 先謝謝各位解答! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.138.100.239 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1492863021.A.93E.html

04/23 22:17, , 1F
感謝答覆,我再花點時間看能否達成!
04/23 22:17, 1F

04/24 23:04, , 2F
select table_s1.nextval from dual不行嗎?
04/24 23:04, 2F

04/26 22:12, , 3F
雖然sequence序號可以預先取得,但我要避免insert失敗而
04/26 22:12, 3F

04/26 22:12, , 4F
跳號的風險
04/26 22:12, 4F

05/02 16:53, , 5F
確認有成功再抓currval不行嗎?
05/02 16:53, 5F
文章代碼(AID): #1O-qWja- (Database)
文章代碼(AID): #1O-qWja- (Database)