(2023年5月)
phpMyAdminでのレコード数(行数)が、一致しナゐ謎杉流事案に遭遇。
関連:phpMyAdmin
テーブル一覧画面ではナゐ
マヅ、テーブル一覧画面での行数は正確ではナゐとゆぅンは知ってるンで、ソレやなゐ。
↑テーブル一覧画面
正確な数字とは限りません。
正確な数字を得るために番号をクリックしてください。
FAQ 3.11をご覧ください。
May be approximate.
Click on the number to get the exact count.
See FAQ 3.11.
一覧/一蘭(暴利ラーメソ)内の一テーブル全ての行数カウントをすると一覧/同表示も大変なンで、おおよその(approximate)値で手を打っているのかはシラン(SILANE)けど。
今回の怪事象
同じテーブルを、各々別のサーバー内にある、3箇所のphpMyAdminで調べてみたら、以下のように、1件だけ違(チャ)う。
・phpMyAdmin(A):202,084
・phpMyAdmin(B):200,245
・phpMyAdmin(C):202,084
(B)だけ、明らかに/朗蟹違(チャ)う。
多数決的には(B)が誤りとなるが…
検証(壹)
3/参/惨者に対し、インデックスが「PRIMARY」である`id`を降順(DESC)で並べ、最大の`id`を得ると、全て「202,084」なので、「202,084」が正解のハヅだが、(B)が違(チャ)うのはなンで?
`id`は「PRIMARY」なので、ユニークはいいえ(=重複は絶対ない)だし、以下のSQLコマンドで、抜けはなく連番だから、最後の`id`が件数となるハヅだ。
SET @i := 0 ;
UPDATE `テーブル名` SET `id` = (@i := @i + 1) ;
ALTER TABLE `テーブル名` AUTO_INCREMENT = 1 ;
関連:[MySQL] idを詰める(連番を振り直す)方法とAUTO_INCREMENTのリセット [DB]
ヴァクァなの?スィヌの?
検証(貳)
重複ナゐハヅの`id`を、ワヅァ々DISTINCTを付けてカウントすると、3者とも「202,084」となる。
SELECT DISTINCT(COUNT(`id`)) FROM `テーブル名` ;
ヴァクァなの?スィヌの?
検証(參)
エクスポートしたファイル(.sql)をテキストエディタで開いてみても、202,084件が正解。
そのファイルをgrepして件数をカウントしても、「202,084」が正解。
(現在の内容) — Found(202084)
202084 個見つかりました。
ヴァクァなの?スィヌの?
検証(肆)
(B)のテーブルをエクスポートして、(C)にインポートすると、異なッた値(202,084件)となる…
ヴァクァなの?スィヌの?
一意な値の数
以上/異常/異状/委譲のコトから、「202,084」が正解と思われるが、なンで違(チャ)うンがアル/ARUEの?
ただ、インデックスで、`id`の「一意な値の数」を見ると、上記とは異なり、3者ともバラバラとなる怪事案に遭遇!
↑一意な値の数(A)
↑一意な値の数(B)
↑一意な値の数(C)
・phpMyAdmin(A):199,086
・phpMyAdmin(B):200,245
・phpMyAdmin(C):198,306
「一意な」とはスナワチUNIQUE、唯一(唯一神=又吉ゐゑス)なので、`id`の数と一致するハヅなンだが、參ツとも異なるとゐぅ異常事態!
マサカ、此処も、「正確な数字とは限りません」なンか?
バージョン情報
・phpMyAdmin(A):4.4.15.10
・phpMyAdmin(B):4.9.5
・phpMyAdmin(C):4.0.10.18
策
このように、意味不明な事案を当方に対しサシムケ、当方を精神的にい追ゐ込ンで斃ソ~/SAWとゆぅ策なンだろうが、ワシはンなカンタンには斃ルェン!
逆にキサマを捕(トラ)縛ゑ、地獄ヌォ火ヌォ中ヌィ投グェ込むモノでARUE!
関連:[MySQL] テーブルのエクスポートで、レコード数の不一致が生じる問題 [phpMyAdmin,Dump all rows]
関連:[phpMyAdmin] テーマ(スタイル/デザイン)の変更 [Debian]
関連:[2048KiB] phpMyAdminでのインポートファイルの上限を変更 [Debian,Ubuntu]