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

MySQLdbのコマンドが同期しないようにする方法。今すぐこのコマンドを実行することはできません(2014)例外

    DB-APIは、最初のコマンドでトランザクションを開始し、それをコミットするための独自のAPI呼び出しを持って、独自にトランザクションを処理しようとします。したがって、

    cursor.execute( "CREATE TABLE t1 ( t1_id INT PRIMARY KEY AUTO_INCREMENT )" )
    cursor.commit()
    cursor.execute( "CREATE TABLE t2 ( t2_id INT PRIMARY KEY AUTO_INCREMENT )" )
    cursor.commit()
    

    私の意見では、これはPythonのDB-APIの深刻で明白な設計エラーであり、トランザクションの外部でコマンドを実行したり、トランザクションを適切に制御したりするのは非常に面倒です。 SQLiteのBEGIN EXCLUSIVE TRANSACTIONのようなものを使用するには 。まるで、実際のデータベースの経験がない人がAPIを設計することを許可されたかのようです...




    1. OracleスキーマとMicrosoftスキーマの違いは何ですか?

    2. 10進数のデータ型は値を丸めています

    3. 楽観的同時実行性:IsConcurrencyTokenおよびRowVersion

    4. Php mysql pdoクエリ:変数にクエリ結果を入力します