2011-01-29 8 views
-2

私はMySQLデータベースにテーブルを持っています。この表では、自動増分IDフィールドを使ってレコードの数を確認しました。合計は700でした。2日後に7000が表示され、データを追加すると1から7001,7002 ...と増えます。奇妙なこと2日前私は私のテーブルに700レコードを持っています。それはもっと表示しています

これはなぜ起こっているのですか?

+0

Wheres your code? – Drewdin

+2

レコードを追加している可能性はありますか? –

+4

4ヶ月前からGd uze proplish inglish wen axing kwstns thx。 –

答えて

1

表のAUTO_INCREMENTオプションは、おそらく7000に設定されています。これにより、MySQLは次の挿入行のID値としてそれを使用します。これは、行数に関する情報を提供しません。あなたが望むなら、それを70億に設定することができます。

テーブル内の行数を取得するには、SELECT COUNT(*) FROM tableを使用します。

+0

私はそれを見せている7312を実行しますが、1日か2日に多くのレコードを入力することはできません。 – ansh

+0

AUTO_INCREMENTは7486にありますか?私は1にすることはできますか? – ansh

+0

@ansh:はい、できますが、ID 1が既に使用されているため、エラーが発生します。私はちょうどIDをそのまま残しておきます。 IDのサイズは、アプリケーションを機能させる上で重要ではありません。 – NikiC

2

idフィールドを見るのではなく、テーブルからcount(*)を選択すると少なくとも実際のレコード数は

1

ですが、IDフィールドの最大値は7000ですが、レコード数ではありません。

レコードを削除した場合、IDシーケンスを「下げる」ことはできません。たとえば、10個のレコードを作成した場合、IDは1,2、... 10になります。2を削除して1を追加すると、最後にID 11があります。これは何が起こっているのですか?

関連する問題