2009-07-14 9 views
4

私はOracleプラットフォーム(MySQLは主にPostgresとSQL Serverを少し使用しています)を使い慣れていません。私は最近次のようなステートメントを発見しましたSQL Plusと「通常の」SQLの違いは?

DESC TABLE_NAME; 

は私のクエリをテストするために使用するSQL * Plusツールでのみ機能します。 Oracleのデータベースに接続するためにPHPの標準関数を使用すると動作しません。代わりに

SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME = 'TABLE_NAME' 

のようなものを使用する必要があります。

これは、「DESC」文がSQL * Plusアプリケーションのアドオンであるためです。

私の質問は

  1. が私の理解は正しいですか、そこが起こって、より微妙なものです

    ですか?
  2. SQL * Plusには他に特別な追加機能がありますか?
  3. Oracle上でスピードアップするためにこれらの特別な追加機能をオフにする方法はありますか?
  4. プラットフォームのvetransからOracle newbのその他の一般的なアドバイスをいただければ幸いです。

答えて

11
  1. はい。 SQL * Plusはクライアント・ツールです。 SQLは実際にサーバー上で実行されます。
  2. SQL * Plusのマニュアルは、「Extensionsの多くのherehereであるSQL * Plusで、実際にプレゼンテーションに関連する(例えばどのようにワイド画面である)
  3. されていません。 SQL * Plusを長期間使用すると、すぐにデフォルトの行サイズ、ページ・サイズ、列サイズ、数値書式を変更する必要があることがわかります。
  4. 個人的には、 SQL * Plusで作業を行うために、GUIクライアント・ツールの1つが非常に簡単になります。個人的に私はほとんどのもののためにSQL Squirrelを使用しています。私のお気に入りのエディタとSQL * Plus for PL/SQLプログラム開発です。
+1

1つ以上、具体的には、SQLは、サーバーが結果を返すために理解し使用する言語です。したがって、PHPからのSQLクエリのみを実行できます。 Oracleは標準SQLを理解していますが、独自の拡張機能を備えています... DESCはSQL * Plusにのみ組み込まれています。 4 /私はあなたのようなGUIツールなしでLinuxやSolaris上で作業している場合は、sqlplusを使用しているかもしれません。デフォルトでsqlplusは、最後に入力されたコマンドの古い上向き矢印を表示しません。 rlwrapライブラリをダウンロード/ビルドしてインストールする場合、rlwrap sqlplusを使用してsqlplusを実行できます。 gqlplusもありますが、実際の金額は異なる場合があります。 – Matt