ORACLE DELETE & TRUNCATE 区别

Jun 07, 2016 pm 03:20 PM
amp delete oracle truncate 違い

用法: delete from tablename; truncate table tablename; 两者 相同点: delete、truncate都能起到清除表数据功能; 两者 不同点: delete语句用于表、视图等;delete可以指定单条数据删除;delete属于DML操纵语言; truncate只能用于表;truncate删除整表

用法:

delete from tablename;

truncate table tablename;

两者相同点:

delete、truncate都能起到清除表数据功能;

两者不同点:

delete语句用于表、视图等;delete可以指定单条数据删除;delete属于DML操纵语言;

truncate只能用于表;truncate删除整表数据;truncate属于DDL定义语言;

也就是说delete删除之后数据可以在回滚,使用rollback;而truncate删除之后数据时不可恢复的。

执行效率:

truncate语句删除效率远高于delete语句。

两者执行原理:

delete:删除一条数据之前首先copy这条数据到撤销段,删除几百几千万条都先要copy到撤销段,有人就问了,删除之前为什么都要copy到撤销段里面,别忘了,delete删除之后还可以再使用rollback恢复的,恢复的数据就要根据日志文件到撤销段里找到再回复。中间多一种copy操作,增加额外的一种安全保证,损失点效率是肯定的;

truncate语句直接进行删除,无须copy到撤销段,效率的提升是显著的,但带来的风险也是存在的,如误删除了数据,该删除数据是不可恢复的因为他是DDL,后台隐式提交事务。用时需谨慎。

 

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Oracle Loopでカーソルを作成する方法 Oracle Loopでカーソルを作成する方法 Apr 12, 2025 am 06:18 AM

Oracleでは、forループループは動的にカーソルを作成できます。手順は次のとおりです。1。カーソルタイプを定義します。 2。ループを作成します。 3.カーソルを動的に作成します。 4。カーソルを実行します。 5。カーソルを閉じます。例:カーソルをサイクルごとに作成して、上位10人の従業員の名前と給与を表示できます。

Oracleデータベースを停止する方法 Oracleデータベースを停止する方法 Apr 12, 2025 am 06:12 AM

Oracleデータベースを停止するには、次の手順を実行します。1。データベースに接続します。 2。すぐにシャットダウンします。 3.シャットダウンは完全に中止します。

Oracle Dynamic SQLを作成する方法 Oracle Dynamic SQLを作成する方法 Apr 12, 2025 am 06:06 AM

SQLステートメントは、Oracleの動的SQLを使用して、ランタイム入力に基づいて作成および実行できます。手順には、次のものが含まれます。動的に生成されたSQLステートメントを保存するための空の文字列変数を準備します。 executeを即座に使用するか、ステートメントを準備して、動的なSQLステートメントをコンパイルおよび実行します。バインド変数を使用して、ユーザー入力またはその他の動的値を動的SQLに渡します。実行するか、実行するか、動的SQLステートメントを実行します。

HDFSでCentosを構成するために必要な手順 HDFSでCentosを構成するために必要な手順 Apr 14, 2025 pm 06:42 PM

CENTOSシステムにHadoop分散ファイルシステム(HDFS)を構築するには、複数のステップが必要です。この記事では、簡単な構成ガイドを提供します。 1.初期段階でJDKをインストールする準備:すべてのノードにJavadevelopmentKit(JDK)をインストールすると、バージョンはHadoopと互換性がある必要があります。インストールパッケージは、Oracleの公式Webサイトからダウンロードできます。環境変数構成: /etc /プロファイルファイルを編集し、JavaおよびHadoop環境変数を設定して、システムがJDKとHadoopのインストールパスを見つけることができるようにします。 2。セキュリティ構成:SSHパスワードなしログインSSHキーを生成する:各ノードでSSH-KeyGenコマンドを使用する

CentosとUbuntuの違い CentosとUbuntuの違い Apr 14, 2025 pm 09:09 PM

Centosとubuntuの重要な違いは次のとおりです。起源(CentosはRed Hat、for Enterprises、UbuntuはDebianに由来します。個人用のDebianに由来します)、パッケージ管理(CentosはYumを使用し、安定性に焦点を当てます。チュートリアルとドキュメント)、使用(Centosはサーバーに偏っています。Ubuntuはサーバーやデスクトップに適しています)、その他の違いにはインストールのシンプルさが含まれます(Centos is Thin)

Centosでファイアウォールステータスを表示する方法 Centosでファイアウォールステータスを表示する方法 Apr 14, 2025 pm 08:18 PM

Centosファイアウォールの状態は、sudo firewall-cmd--stateコマンドを通じて表示され、ランニングまたはランニングに戻ります。詳細については、構成された領域、サービス、ポートなどを含むSudo Firewall-CMD - List-Allを使用して表示できます。FireWall-CMDが問題を解決しない場合は、sudo iptables -l -nを使用してiptablesルールを表示できます。ファイアウォール構成を変更する前に、サーバーのセキュリティを確保する前に、必ずバックアップを作成してください。

Oracleでデータベースを開く方法 Oracleでデータベースを開く方法 Apr 11, 2025 pm 10:51 PM

Oracleデータベースを開く手順は次のとおりです。Oracleデータベースクライアントを開き、データベースサーバーに接続します。ユーザー名/パスワード@servername sqlplusコマンドを使用してデータベースを開きます:sqlplus

オラクルにトリガーの使用方法 オラクルにトリガーの使用方法 Apr 11, 2025 pm 11:57 PM

Oracleのトリガーは、特定のイベント(挿入、更新、または削除)後に操作を自動的に実行するために使用されるストアドプロシージャです。これらは、データ検証、監査、データメンテナンスなど、さまざまなシナリオで使用されています。トリガーを作成するときは、トリガー名、アソシエーションテーブル、トリガーイベント、トリガー時間を指定する必要があります。トリガーには2種類のタイプがあります。操作前にトリガーが起動され、後のトリガーが操作後に起動されます。たとえば、挿入前のトリガーは、挿入された行の年齢列が負でないことを保証します。

See all articles