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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

oracle怎么查询换行符,关于oracle:如何检查表中所有列的换行符

發布時間:2025/3/13 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle怎么查询换行符,关于oracle:如何检查表中所有列的换行符 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

假設有一個名為" GROUP_DETAILS"的表,該表具有列(名稱,代碼,DESCRIPTION)。

因此,該表如下所示:

我正在嘗試在表格的所有列中找到換行符。 然后,一旦找到該列,我也想顯示為輸出。 我已經創建了如下腳本:

DECLARE

BEGIN

FOR r IN (SELECT column_name FROM user_tab_columns WHERE TABLE_NAME = 'GROUP_DETAILS') LOOP

SELECT r FROM GROUP_DETAILS WHERE INSTR(r, CHR(10)) > 0;

END LOOP;

END;

我收到如下錯誤:

Error report -

ORA-06550: line 4, column 48:

PLS-00382: expression is of wrong type

ORA-06550: line 4, column 12:

PLS-00382: expression is of wrong type

ORA-06550: line 4, column 5:

PLS-00428: an INTO clause is expected in this SELECT statement

06550. 00000 - "line %s, column %s:

%s"

*Cause: Usually a PL/SQL compilation error.

*Action:

為什么標有MySQL?

使用r.column_name獲取列名,并將其更改為動態查詢,在此情況下,您將列名與兩個地方的查詢字符串連接在一起。 它還缺少INTO子句,無法在變量中獲取字符串。

@tadman我認為他們在開發時并沒有什么不同

我在"答案"中提供了另一種方法,但是如果您只是想知道是什么觸發了PLS-00382,那是您傳遞給instr的chr(10)參數。 您必須將其括在單引號中,以使其成為字符串。

MySQL和Oracle之間的語法可能完全不同。 嘗試一次將您的問題僅集中在一個平臺上,以免造成混淆。 無論您現在與誰一起工作,要么/或者。

@tadman我明白了。 我的其他問題或答案將有助于避免混淆。

您需要在PL / SQL中執行此操作嗎? 您可以使用普通的SQL獲取有問題的行,如下所示:

SELECT name, code, description,

CASE WHEN name ? ? ? ?LIKE '%' || CHR(10) || '%' THEN 'name, ' ? ? ?END ||

CASE WHEN code ? ? ? ?LIKE '%' || CHR(10) || '%' THEN 'code, ' ? ? ?END ||

CASE WHEN description LIKE '%' || CHR(10) || '%' THEN 'description' END

AS where_found

FROM group_details

WHERE name ? ? ? ?LIKE '%' || CHR(10) || '%'

OR code ? ? ? ?LIKE '%' || CHR(10) || '%'

OR description LIKE '%' || CHR(10) || '%';

這將返回所有行,其中至少一列包含換行符,并且計算出的where_found列將準確告訴您哪些列具有這些值。 (它們也將清晰可見;如果需要,計算出的列可用于進一步處理。)

總結

以上是生活随笔為你收集整理的oracle怎么查询换行符,关于oracle:如何检查表中所有列的换行符的全部內容,希望文章能夠幫你解決所遇到的問題。

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