1

Oracleでグローバル一時テーブルを作成し、アプリケーションを介してデータを挿入しました。ユーザー名として「システム」を使用してデータベースに接続すると、正常に機能します。「user1」を使用してデータベースにもう1人のユーザーを作成し、このユーザーにも「Grant all」権限を付与しました。ユーザー名として「User1」を使用してデータベースに接続し、アプリケーションを実行すると、データがグローバル一時テーブルに挿入されません。しかし、SQL開発者ツールからデータを挿入しようとすると、挿入されます。アプリケーションを介したシステムユーザーでも機能しますが、user1では挿入されません。あまりDBの専門家ではないので、何が起こっているのかわかりません。

何かアイデアを提案してください。私もすべての特権を持っています。前もって感謝します。

4

1 に答える 1

0

まず、テーブルはSYSまたはSYSTEM以外のスキーマにある必要があります。「User1」で作成します。

次に、必ず同じテーブルから選択する必要があります。挿入時および読み取り時に、テーブルの前にスキーマを付けます。

ON COMMIT DELETE ROWSまた、SQLDeveloperで作成されたテーブルやAUTOCOMMIT ONSQLDeveloperで作成されたテーブルの状況にないことを確認してください。

于 2013-01-08T06:26:32.687 に答える