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

すべてのEXECUTEIMMEDIATEの後にCOMMITが必要ですか?

    あなたが本当にコミットすることを余儀なくされるのは、ビジネストランザクションの終わりに他のthasnだけです:

    1. DDLを実行する場合:DDLの実行は暗黙のコミットのペアでラップされます。
    2. ダイレクトパス挿入後:挿入がコミットされるまでテーブルを読み取ることはできません。

    馬鹿げたコメントとして、コミットする正しいポイントは、ビジネストランザクションが完了したときです。それ以外の場合は、データベースを離れた部分的に完了してコミットされたトランザクションが論理的に一貫性のない状態であることを検出して修正するためのコードを自分で作成する必要があります(たとえば、INVOICEレコードがINVOICE_DETAILレコードなしで存在します)。



    1. AWSRDSインスタンスのアップグレードダウンタイム

    2. バイナリデータを使用したSQLクエリ(PHPおよびMySQL)

    3. AndroidとPhonegapを使用したSQLiteデータベースのストレージ

    4. Oracleで複数の行を連結してグループ化する