0

ORACLE DATABASEを扱うプロジェクトに取り組んでいます。私のプロジェクトには 2 つの機能があります。1 つは、テーブルのコンテンツをフラット ファイル (バックアップ) にフェッチすることです。2 つ目は、そのフラット ファイルを取得して、そのデータを同じ構造 (別名restore ) を持つ空のテーブルに復元することです。

RAW|LONG RAWを除くすべてのデータ型オブジェクトの Oracle データベース データをバックアップおよび復元できます。私はそれに関して問題があります。たとえば、データベース データを from の文字列のフラット ファイルにバックアップします。お気に入り

1,"Name", "Class",12.00 

現在、テーブルにRAW または LONG RAWデータ型がある場合、テーブルへの挿入時にRAWTOHEXメソッドを使用して任意のデータ型から raw 型に挿入できます。 ケースをよりよく理解するために、ここでは 2 つのテーブルを使用します。

  1. 1つのテーブルはTBLNUMとその列ID NUMBER、RAWINT RAW(2000)と言う

  2. 2番目のテーブルは、TBLCHARとその列ID NUMBER、RAWCHAR RAW(2000)と言います

そのため、数値のみを使用して未加工の num 値の TBLNUM にデータを挿入し、文字列のみに TBLCHAR を挿入します。

このタイプはあまり知られていません。しかし、次の方法で挿入されたデータを取り戻すことができます。 ')

STRING RAWTOHEX('7D') -> 3744 に対しても同じことができ、ult_raw.cast_to_varchar2('3744') -> 7D でそれを取り戻すことができます

最初に、私が間違っている場合は修正してください2番目に正しい場合は、私の質問は、指定された RAW 列の値が INTEGER VALUE または STRING VALUE から作成されたことをフラットファイルから識別する方法です

そのバックアップファイルを使用して、同じデータを別のデータベーステーブルに挿入できることを使用して、解決策を見つけたいと思います。そして、フラットファイルを作成した場所からソーステーブルにあったように、データを挿入する必要があります。

4

1 に答える 1