sql >> データベース >  >> RDS >> Oracle

TRUNCATEとDELETEの違いは?

    削除

    1. DELETEはDMLコマンドです。
    2. DELETEステートメントは行ロックを使用して実行され、テーブル内の各行は削除のためにロックされます。
    3. where句でフィルタを指定できます
    4. 条件が存在する場合、指定されたデータを削除します。
    5. 操作は個別にログに記録されるため、削除するとトリガーがアクティブになります。
    6. ログを保持するため、切り捨てよりも遅くなります。
    7. ロールバックが可能です。

    切り捨て

    1. TRUNCATEはDDLコマンドです。
    2. TRUNCATE TABLEは常にテーブルとページをロックしますが、各行はロックしません。
    3. Where条件は使用できません。
    4. すべてのデータを削除します。
    5. TRUNCATE TABLEは、操作が個々の行の削除をログに記録しないため、トリガーをアクティブ化できません。
    6. ログを保持しないため、パフォーマンスが向上します。
    7. ロールバックはできません。


    1. タイプの制約を確認する

    2. TableGatewayを使用したZF2のLEFTJOIN

    3. 内容の長さに基づいてMySQL列にインデックスを作成しますか?

    4. T-SQLを使用して2つの整数値を除算してfloat結果を取得するにはどうすればよいですか?