* データの削除とオートインクリメントの値の変更(MySQL)

:LOGBOOK:
CLOCK: [2020-08-16 日 10:39]--[2020-08-16 日 11:02] => 0:23
:END:

:CATEGORIES: MySQL

〉〉〉:Emacs: 2020-08-16(日曜日)10:39  〉〉〉

 まず,誤って登録したデータを削除し正常化させた結果になります。


mysql> select id,user from tw_user_tweet ORDER BY id DESC limit 20;
+--------+-----------------+
| id | user |
+--------+-----------------+
| 483788 | fukazawas |
| 483787 | fukazawas |
| 483786 | motoken_tw |
| 483785 | motoken_tw |
| 483784 | Miyako_Koji |
| 483783 | mackckckck |
| 483782 | fukazawas |
| 483781 | fukazawas |
| 483780 | fukazawas |
| 483779 | fukazawas |
| 483778 | fukazawas |
| 483777 | kumaemon9 |
| 483776 | k_sawmen |
| 483775 | guitar_ben |
| 483774 | mototakiryu |
| 483773 | todateyoshiyuki |
| 483772 | todateyoshiyuki |
| 483771 | todateyoshiyuki |
| 483770 | kurodalawoffice |
| 483769 | hirono_hideki |
+--------+-----------------+
20 rows in set (0.00 sec)

 テーブルの状態を確認。

mysql> show table status like 'tw_user_tweet';

 データの削除にともなうオートインクリメントの値を変更。

mysql> ALTER TABLE tw_user_tweet AUTO_INCREMENT=483785;

 TwitterAPIのスクリプトで,「:tweet_mode =>"extended"」というオプションを指定したところ,他のスクリプトではうまく行っていたのに,指定したユーザではないものがデータベースに入ってしまいました。原因は,「 :page => "#{tw_offset}"」を付けていなかったことでした。

 誤った投稿の削除です。

mysql> delete from tw_user_tweet where id >= 483785;

〈〈〈:Emacs: 2020-08-16(日曜日)11:02  〈〈〈