2012-01-18 9 views
0

私は数百万行のテーブルを持っており、クエリを実行しているときにデータを取得するのに時間がかかります。私は日付に基づいてそれを分割しようとしました。私はそれを分割するには、Oracleで利用可能な再定義パッケージを使用してみましたが、うまくいきませんでしたOracleでのテーブルのパーティション

ERROR_IND 
FEED_ID 
QUEUE_ID 
FEED_DT_TM-- Date datatype. 

としてカラム名と、以下の表を持っています。テーブルを効率的に分割する方法を教えてください。

+4

どのように働いていないのですか?どのようなエラーメッセージが表示されますか? – Sathya

+0

最初にOracleのdocs(http://docs.oracle.com/cd/E18283_01/server.112/e16541/part_admin001.htm)を読んでください。どのようにデータにアクセスすれば、パーティション化のアプローチが決定されますか(パーティションの範囲はあなたの投稿から推測されます)。 – tbone

答えて

3

テーブルがあれば再定義することはできません:彼らはマテリアライズド・ビューをしている

  • またはそれらにマテリアライズド・ビュー・ログを
  • 彼らはSYSまたはSYSTEM
  • に属しBFILE、LONG RAWまたはLONG​​列
  • が含まれている
  • データベースは、NOLOGGINGモードである
  • 彼らは一時的またはクラスタ化されている

DBMS_REDEFINITION.CAN_REDEF_TABLEを電話すると、テーブルが適切かどうかが確認されます。

DBMS_REDEFINITIONを使用して既存のテーブルを分割する方法については、このガイドを参考にしてください。link

関連する問題