![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 陳威瑄 ![]()
![]() |
資料表有3個,分別是A.B.C 而資料表裡又有很多欄位 要如何在這裡面找出有關鍵字"TEST"的欄位資料 我在網路上有找到MS SQL的方法 http://wp.mlab.tw/?p=1552 http://blog.miniasp.com/post/2010/07/12/Search-all-columns-of-all-tables-in-a-database-for-a-keyword.aspx 但是這方法在ORACLE資料庫無法執行 |
1樓 |
試試看,如果發生找不到資料表的錯誤,應該是沒有存取該table的權限
本篇文章回覆於2017-02-20 15:39
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
陳威瑄 ![]() |
不好意思
請問這個要如何使用 我知道searchdata給我要搜尋的字串 但是a.table_name要如何給? 資料庫裡有不少資料表 我測試先給確定有這個字串的資料表後讓他執行 跑完後沒出現任何訊息 也沒有列出資料
本篇文章回覆於2017-02-22 11:58
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓
最有價值解答
QOO ![]() ![]() |
抱歉,因為我用dbms_output做輸出的關係,所以要先執行下面這個語法
SET SERVEROUTPUT ON 另外我調整了一下語法,原本的語法只會列出有你想的資料的table名稱及欄位名稱,看不到資料的內容 下面這個語法可以顯示資料的內容
本篇文章回覆於2017-02-22 16:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
陳威瑄 ![]() |
不好意思
我現在試這執行新的這一段 發現執行會出現相同指令10次 ex: SELECT A01 FROM A WHERE A01 LIKE '%字串%' SELECT A01 FROM A WHERE A01 LIKE '%字串%' ....10次 SELECT A02 FROM A WHERE A02 LIKE '%字串%' SELECT A02 FROM A WHERE A02 LIKE '%字串%' ....10次 因為我用IN去找2個資料表(分別各1xx個欄位) 所以必須要設定FOR 3000次以上才能夠2個資料表全搜尋 請問哪一段迴圈需要修改
本篇文章回覆於2017-02-23 10:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
哎呀,不好意思
你直接把19行刪掉就好了,那個是我限制迴圈不要跑太多而加上的限制 把19行刪去,就可跑完所有的欄位了 然後27行是我debug用的,也可以刪掉,就不會跑出select ....的東西了
本篇文章回覆於2017-02-23 10:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
陳威瑄 ![]() |
謝謝QOO的幫忙
本篇文章回覆於2017-02-23 11:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |