[過去ログ] スレ立てるまでもない質問はここで 164匹目 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
100
(1): デフォルトの名無しさん [sage] 2023/05/07(日) 12:30:19.36 ID:aFD4R/CC(1) AAS
>>98
98(1): デフォルトの名無しさん [sage] 2023/05/07(日) 11:41:22.71 ID:xEkqTcpa(2/2) AAS
>>97
でも、CTRL+C を押すことは「中断しろ」の意味なのに、
ROLLBACKではなく、COMMIT を発行してしまうのはバグという事になりそうです。
ChatGPTは、それがバグであると言うことは認識していないようです。
>でも、CTRL+C を押すことは「中断しろ」の意味なのに、
>ROLLBACKではなく、COMMIT を発行してしまうのはバグという事になりそうです。
そんな現象は起こってないよ
>>90
90(5): デフォルトの名無しさん [sage] 2023/05/06(土) 22:21:35.73 ID:h3v77DEJ(1) AAS
>>71
chatgptってしたがって好きだな

SQLite のドキュメンテーションによれば、DROP TABLE コマンドが発行された時点でトランザクションが開始されますが、その後に COMMIT もしくは ROLLBACK コマンドを実行するまでトランザクションは未完了のままになります。また、SQLite はトランザクションの自動コミットモードをデフォルトで有効にしており、各 SQL コマンドが実行されるたびに自動的にトランザクションがコミットされます。
したがって、CTRL+C を押すことによって sqlite3.exe を強制終了させた場合でも、SQLite は DROP TABLE コマンドを実行していたと考えられます。また、自動コミットモードが有効であるため、このコマンドは自動的にコミットされ、テーブルが削除されたという結果になります。
したがって、SQLite の動作としては正常であり、DROP TABLE コマンドをキャンセルする場合は、ROLLBACK コマンドを発行する必要があります。また、トランザクションを明示的に開始して、DROP TABLE コマンドを実行することで、コマンドを途中でキャンセルすることができます。
>>93
93(5): デフォルトの名無しさん [sage] 2023/05/07(日) 01:25:03.86 ID:6RURAAgh(1) AAS
これ自体はおそらく正しい
>begin;
でトランザクションを開始しておけば
>drop table AAA
でctrl-cして終了してもテーブルは消えない

ただ、今問題なのはなぜセミコロンを打ってない状態でctrl-cしたのにsql文が実行されてしまうのかということだけど
をよく読んで
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.360s*