Oracle では、ALTER ステートメントと「ADD PARTITION」を使用してテーブルにパーティションを追加できます。構文は「ALTER TABLE テーブル名 ADD PARTITION パーティション VALUES」です。
このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。
Oracle のテーブルにパーティションを追加する方法
1. パーティションの追加
次のコマンドは、P3 パーティションを SALES テーブルに追加します。
ALTER TABLE SALES ADD PARTITION P3 VALUES LESS THAN(TO_DATE('2018-09-01','YYYY-MM-DD'));
注意: 上記で追加したパーティション境界は、最後のパーティション境界よりも高い必要があります。
次のコマンドは、SALES テーブルの P3 パーティションに P3SUB1 サブパーティションを追加します
ALTER TABLE SALES MODIFY PARTITION P3 ADD SUBPARTITION P3SUB1 VALUES('COMPLETE');
2。パーティションの削除
次のコマンドは、 P3 テーブル パーティション :
ALTER TABLE SALES DROP PARTITION P3;
P4SUB1 サブパーティションは次のコマンドで削除されました:
ALTER TABLE SALES DROP SUBPARTITION P4SUB1;
注: 削除されたパーティションがテーブル内の唯一のパーティションである場合、このパーティションは削除できません。このパーティションを削除するには、テーブルを削除する必要があります。
3. パーティションの切り捨て
パーティションの切り捨てとは、パーティション内のデータを削除することを意味します。パーティションは削除されず、他のパーティションのデータも削除されません。 。 データ。テーブル内にパーティションが 1 つだけある場合、パーティションは切り詰められる可能性があります。次のコマンドを使用してパーティションを切り詰めます:
ALTER TABLE SALES TRUNCATE PARTITION P2;
次のコマンドを使用してサブパーティションを切り詰めます:
ALTER TABLE SALES TRUNCATE SUBPARTITION P2SUB2;
4. パーティションをマージします
マージするパーティションをマージします。隣接するパーティション パーティションは 1 つのパーティションにマージされ、結果のパーティションは上位のパーティションの境界を取得します。パーティションを下位の境界を持つパーティションにマージすることはできないことに注意してください。次のコマンドは、P1 パーティションと P2 パーティションのマージを実現します:
ALTER TABLE SALES MERGE PARTITIONS P1,P2 INTO PARTITION P2;
5. パーティションの分割
パーティションの分割 1 つのパーティションを 2 つの新しいパーティションに分割します。もはや存在しない。 HASH タイプのパーティションは分割できないことに注意してください。
ALTER TABLE SALES SBLIT PARTITION P2 AT(TO_DATE('2003-02-01','YYYY-MM-DD')) INTO (PARTITION P21,PARTITION P22);
6. パーティションの結合 (coalesca)
パーティションの結合とは、ハッシュ パーティション内のデータを他のパーティションに結合することです。サイズが大きい場合は、ハッシュ パーティションを追加して結合できますが、結合パーティションはハッシュ パーティション内でのみ使用できることに注意してください。次のコマンドを使用してパーティションを結合します:
ALTER TABLE SALES COALESCA PARTITION;
7. テーブル パーティションの名前を変更します
次のコマンドは P21 を P2
ALTER TABLE SALES RENAME PARTITION P21 TO P2;
# に変更します##eight 、関連クエリ
クロスパーティションクエリselect sum( *) from (select count(*) cn from t_table_SS PARTITION (P200709_1) union all select count(*) cn from t_table_SS PARTITION (P200709_2) );テーブル上に存在するパーティションの数をクエリ
SELECT * FROM USER_TAB_PARTITIONS WHERE TABLE_NAME='tableName'クエリインデックス情報
select object_name,object_type,tablespace_name,sum(value) from v$segment_statistics where statistic_name IN ('physical reads','physical write','logical reads')and object_type='INDEX' group by object_name,object_type,tablespace_name order by 4 desc
--显示数据库所有分区表的信息: select * from DBA_PART_TABLES --显示当前用户可访问的所有分区表信息: select * from ALL_PART_TABLES --显示当前用户所有分区表的信息: select * from USER_PART_TABLES --显示表分区信息 显示数据库所有分区表的详细分区信息: select * from DBA_TAB_PARTITIONS --显示当前用户可访问的所有分区表的详细分区信息: select * from ALL_TAB_PARTITIONS --显示当前用户所有分区表的详细分区信息: select * from USER_TAB_PARTITIONS --显示子分区信息 显示数据库所有组合分区表的子分区信息: select * from DBA_TAB_SUBPARTITIONS --显示当前用户可访问的所有组合分区表的子分区信息: select * from ALL_TAB_SUBPARTITIONS --显示当前用户所有组合分区表的子分区信息: select * from USER_TAB_SUBPARTITIONS --显示分区列 显示数据库所有分区表的分区列信息: select * from DBA_PART_KEY_COLUMNS --显示当前用户可访问的所有分区表的分区列信息: select * from ALL_PART_KEY_COLUMNS --显示当前用户所有分区表的分区列信息: select * from USER_PART_KEY_COLUMNS --显示子分区列 显示数据库所有分区表的子分区列信息: select * from DBA_SUBPART_KEY_COLUMNS --显示当前用户可访问的所有分区表的子分区列信息: select * from ALL_SUBPART_KEY_COLUMNS --显示当前用户所有分区表的子分区列信息: select * from USER_SUBPART_KEY_COLUMNS --怎样查询出oracle数据库中所有的的分区表 select * from user_tables a where a.partitioned='YES' --删除一个表的数据是 truncate table table_name; --删除分区表一个分区的数据是 alter table table_name truncate partition p5;推奨チュートリアル:《
Oracle ビデオ チュートリアル》
以上がOracle でテーブルにパーティションを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

oracle asm指的是“自动存储管理”,是一种卷管理器,可自动管理磁盘组并提供有效的数据冗余功能;它是做为单独的Oracle实例实施和部署。asm的优势:1、配置简单、可最大化推动数据库合并的存储资源利用;2、支持BIGFILE文件等。

方法:1、利用“select*from user_indexes where table_name=表名”语句查询表中索引;2、利用“select*from all_indexes where table_name=表名”语句查询所有索引。

在Oracle中,可利用lsnrctl命令查询端口号,该命令是Oracle的监听命令;在启动、关闭或重启oracle监听器之前可使用该命令检查oracle监听器的状态,语法为“lsnrctl status”,结果PORT后的内容就是端口号。

在oracle中,可以利用“TO_SINGLE_BYTE(String)”将全角转换为半角;“TO_SINGLE_BYTE”函数可以将参数中所有多字节字符都替换为等价的单字节字符,只有当数据库字符集同时包含多字节和单字节字符的时候有效。

在oracle中,可以利用“drop sequence sequence名”来删除sequence;sequence是自动增加数字序列的意思,也就是序列号,序列号自动增加不能重置,因此需要利用drop sequence语句来删除序列。

在oracle中,可以利用“select ... From all_tab_columns where table_name=upper('表名') AND owner=upper('数据库登录用户名');”语句查询数据库表的数据类型。

方法:1、利用“LOWER(字段值)”将字段转为小写,或者利用“UPPER(字段值)”将字段转为大写;2、利用“REGEXP_LIKE(字符串,正则表达式,'i')”,当参数设置为“i”时,说明进行匹配不区分大小写。

方法:1、利用“alter system set sessions=修改后的数值 scope=spfile”语句修改session参数;2、修改参数之后利用“shutdown immediate – startup”语句重启服务器即可生效。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境
