問題タブ [clob]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 実装に依存しない方法で JPA で Clob を作成する方法
私はEjb3とJPAを使用しています(現時点ではHibernateとOracle 10gに基づいています)
Clob を含むエンティティがあります
次に、このタイプのエンティティを保存したいと思います。
現時点では、完全に機能する次のことを行っています
ただし、これは私のコードを Hibernate に結び付けます! これまでのところ、特に Hibernate 拡張を避け、JPA アノテーションのみを使用してきました。実際にHibernateが私の現在の実装であるため、コードは機能します。
一般的な方法で clob を作成できる JPA API はありますか? 後でToplink/EclipseLinkなどに切り替えることにした場合、何も変更する必要はありませんか?
java - 春のoracle clob挿入問題
OracleデータベースにCLOB値を挿入したいのですが、これが私ができることです。「ORA-01461: LONG 列に挿入するためだけに LONG 値をバインドできます」という操作を挿入しているときに、この例外が発生しました。誰かが私に何をすべきか教えてくれますか? ありがとう。
oracle - PL/SQL Javaストアド・プロシージャのClob as param
javascript のチャンクを表す clob を取り込んで、それを mins する Java ストアド プロシージャがあります。JSP を呼び出す関数の構造は次のとおりです。
実際の JSP には、次のものがあります。
私が抱えている問題は、clob を JS_MIN に渡すたびに、JSP 内で常に null として解釈されることです。JS_MIN を呼び出す前に clob を確認しましたが、内容は間違いありません。私が見逃しているものについてのアイデアはありますか? どんな助けでも大歓迎です。
oracle - CLOBへのファイルのロード
Webサーバーでホストされているファイルを指すURLが与えられた場合、そのURLの内容をCLOBに読み込むことは可能ですか?もしそうなら、どのように?
java - Java/JDBC を使用して Oracle データベースに 4000 文字を超える文字列を格納するにはどうすればよいですか?
Java/JDBC を使用して非常に長い文字列を Oracle データベースに挿入する方法がわかりません。
4000 文字を超える文字列があります。たとえば、6000 文字としましょう。この文字列を取得して、Oracle データベースに格納したいと考えています。
これを行う方法は、CLOB データ型を使用するようです。わかりましたので、列を記述 CLOB として宣言しました。
さて、実際にデータを挿入するときが来たら、準備済みステートメント pstmt があります。のように見えますpstmt = conn.prepareStatement(“INSERT INTO Table VALUES(?)”)
。
だから私は方法を使いたいpstmt.setClob()
。ただし、文字列を含む Clob オブジェクトを作成する方法がわかりません。コンストラクターはありません (おそらく、使用可能なメモリよりもはるかに大きくなる可能性があるためです)。
String を Clob に入れるにはどうすればよいですか?
私は経験豊富なプログラマーではないことに注意してください。説明はできるだけ簡潔にするようにしてください。ここでは、効率性、優れた慣行などは問題ではありません。絶対に最も簡単なソリューションが必要なだけです。可能であれば、他のパッケージのダウンロードは避けたいと思います。現在、私はJDK 1.4とラベルが付いているものを使用していojdbc14.jar
ます。少し見回しましたが、見つけた説明のいずれにも従うことができませんでした。
Clobs を使用しないソリューションがある場合は、それも受け入れますが、それは 1 つの列である必要があります。
oracle - Oracle 11gに無制限の文字を保存する方法は?
Oracle 11g には varchar2 列を持つテーブルがあります。この列が文字列として定義される独自のプログラミング言語を使用します。この列には最大で 2000 文字 (4000 バイト) を格納できます。現在の要件は、列に 2000 文字を超える (実際には無制限の文字数) を格納する必要があるというものです。DBA は、メンテナンス上の理由から BLOB または LONG データ型を好みません。
私が考えることができる解決策は、元のテーブルからこの列を削除し、この列に別のテーブルを用意してから、各文字を行に格納して、無制限の文字を取得することです。このテーブルは、クエリ用に元のテーブルと結合されます。
この問題に対するより良い解決策はありますか?
更新: 独自のプログラミング言語では、string 型および blob 型の変数を定義できます。CLOB のオプションはありません。回答の内容は理解できますが、DBA を担当することはできません。BLOB や LONG からの逸脱が開発者にとって悪夢であることは理解していますが、それでも仕方がありません。
更新 2: 必要な最大文字数が 8000 文字の場合、さらに 3 つの列を追加して、それぞれ 2000 文字の 4 つの列を作成して 8000 文字を取得できますか。したがって、最初の列がいっぱいになると、値は次の列にスピルオーバーされます。この設計には悪い副作用がありますか? 提案してください。
sql - PL/SQLによるCLOB行の連結
次のような ID と clob コンテンツを持つテーブルがあります。
データを挿入します。
選択の結果になった clob の行を連結する関数を実行しようとしています。つまり、テーブルの名前などについて複数のパラメーターを指定する必要はありません。ここでは、を含む列のみを指定する必要があります。 clob であり、残りは処理する必要があります。
関数が壊れています...(誰かが私に助けを与えることができれば、どうもありがとう、そして私はSQLの初心者なので....)。ありがとう!
oracle - PL/SQLのLOOPでのCLOBデータ型の連結
PL / SQLループでCLOBを連結しようとしていますが、DBMS_OUTPUTを使用するとループ値が出力され、CLOBの各結果を実行すると出力も返されますが、nullが返されます。
システムは、渡されたレポート名に基づいて、テーブルにすでに格納されているSQLを実行することを目的としています。この特定のレポートには多くのレポート名があります。したがって、各レポートの連結。渡される引数は、レポート名、関心のあるレポートのバージョン、必要な区切り文字の種類、およびSQL内の不明なもの(存在する場合)の引数リストです。SQLには主に2つのタイプがあります。table_nameを一時table_nameに置き換える必要がある1と、IDを必要とする別の1をSQLのtable_nameに追加します。
REPREF1関数のコードを以下に示します。
乾杯、タンデ
コードの見栄えを良くしてくれたAPCに感謝します。@Robert、コードの最後のループは、CLOBを連結するCONCAT_CLOB集計関数を使用してもnullを返します。
これを試してみると、
また、nullを与えます。ただし、今回はrepnamのdbms出力は完了していません。
sql - SQL を使用して CLOB 内のデータを更新することは可能ですか?
XML データを含む 1 つの clob 列を持つテーブルがあります。clob 列の XYZ を ABC に置き換えたいとします。sqlplus を使用することは可能ですか?
asp.net - SELECT クエリで表示する場合、CLOB データは切り捨てられますか? もしそうなら、どのように表示できますか?
CLOB に変換したいテーブルに Varchar2 フィールドがあります。選択したときにデータが切り捨てられるかどうかはわかりません。もしそうなら、制限は何ですか?それはデータベースの設定に依存しますか?
TOAD または SQLPLUS ウィンドウでは切り捨てられますが、これは環境設定にすぎない可能性があります。実際のアプリケーションで切り詰められるかどうかはわかりません (これはテストできますが、どのサイズまでテストする必要がありますか?)
切り捨てられた場合、CLOB 全体を表示する最善の方法は何ですか? 私の SELECT クエリには他のフィールドがあるため、複数の行をループすることはできないと思います。抜け道はありますか?
ご協力いただきありがとうございます。