私は経験豊富なSQL Serverプログラマですが、Oracleは初めてです。私はストアドプロシージャを記述したい。最初にやりたいことはグローバルテンポラリテーブルを作成し、結果を返す(私はこれをSQL Serverで何度もやったことがあります)。Oracleのストアド・プロシージャ内にグローバル・テンポラリ・テーブルを作成します
ここに私が持っているものの骨格があります。 Oracleは不平を言う。誰かがなぜそれについて何をやるべきか教えてもらえますか?
おかげで、
ディック
create or replace PROCEDURE usp_MU_Secure_Msg_Rpt (startdate IN varchar2, enddate IN varchar2)
IS
BEGIN
CREATE GLOBAL TEMPORARY TABLE Denominator_pvids
(pvid number (38,0),
searchname varchar2 (78),
no_distinct_pids integer,
no_secure_messages integer)
ON COMMIT DELETE ROWS;
--SQL to populate table goes here
SELECT * FROM Denominator_pvids
END;
、一時テーブルをSQL Serverでは非常に一般的であるが、彼らは、オラクルでは非常にまれです。グローバル・テンポラリ・テーブルを作成してOracleで使用することはできますが、Oracleでテンポラリ・テーブルを使用しない方が幸いです。代わりにPL/SQLコレクションが必要な場合があります。 http://stackoverflow.com/questions/7192774/alternative-for-a-mysql-temporary-table-in-oracle/7193529#7193529 –