2011-05-11 18 views
3

すべてうまくいきたいです。 Oracleの宣言に構文上の問題があります。私はMS SQLサーバー上でこれらの変数を使用しています。しかし、Oracleでどのように宣言しますか? MS SQLサーバでORACLEで宣言変数を使用

用途:

DECLARE @FROM_DT DATETIME 
DECLARE @END_DT DATETIME 
DECLARE @LOCATION VARCHAR(100) 

SET @FROM_DT = '04/01/2011' 
SET @END_DT = '05/09/2011' 
SET @LOCATION ='VA' 

おかげで多くの!

答えて

4

PL/SQLブロックの外部に変数を宣言することはできません。

PL/SQLブロックは(例を含む)手動で非常に詳細に記載されている内部変数宣言の形式は:

http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28370/fundamentals.htm#CIHGGIAH

+0

シンプルだが有益。 «PL/SQLブロック外の変数を宣言できません»は、ほとんどのチュートリアルで省略されている重要なビットです。また、他のドキュメントは 'VARIABLE'構文について説明しており、SQL * Plusの内部コマンドであるとは言いません。 –

0

あなたは、他のSQLファイルに変数を渡すことができます。あなたが望むものではありませんが、ブロックを使用せずにいくつかの問題を解決するのに役立ちます。

私config.sqlファイルインスタンスの

@drop.sql 'MY_USER' 

私DROP.SQLファイル:

DROP USER "&1" CASCADE;