mysqlでテーブルの主キーをリセットする方法は?
テーブルの主キーをリセットするとは、auto_incrementプロパティを1にリセットすることを意味します。構文は次のとおりです。テーブルの主キーをリセットします。
alter table yourTableName auto_increment = 1;
理解するために、テーブルを作成しましょう-
mysql> create table ResetPrimaryKey −> ( −> Id int auto_increment, −> PRIMARY KEY(Id) −> ); Query OK, 0 rows affected (0.59 sec)
mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.18 sec) mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.15 sec) mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.09 sec) mysql> insert into ResetPrimaryKey values(); Query OK, 1 row affected (0.09 sec)
これで、selectステートメントを使用してすべてのレコードを表示できます。クエリは次のとおりです-
mysql> select *from ResetPrimaryKey;
以下は、主キーであるIDのみを表示する出力です。
+----+ | Id | +----+ | 1 | | 2 | | 3 | | 4 | +----+ 4 rows in set (0.00 sec)
これは、alter-
を使用してテーブルの主キーをリセットするためのクエリです。mysql> alter table ResetPrimaryKey auto_increment = 1; Query OK, 0 rows affected (0.21 sec) Records: 0 Duplicates: 0 Warnings: 0
auto_incrementプロパティが正常に追加されたかどうかを確認するためのクエリ:
mysql> desc ResetPrimaryKey;
+-------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | +-------+---------+------+-----+---------+----------------+ 1 row in set (0.11 sec)
-
MySQLで主キーをリセットする
主キーをリセットするには、最初にTRUNCATEテーブルを使用し、次にALTERTABLEを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1929 ( UserId int NOT NULL AUTO_INCREMENT, PRIMARY KEY(UserId) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql>
-
MySQLのさまざまなテーブルに対して主キーを外部として参照するにはどうすればよいですか?
以下は構文です- alter table yourSecondTableName add constraint `yourConstraintName` foreign key(`yourSecondTableNamePrimaryKey`) references yourFirstTableName(yourFirstTablePrimaryKeyColumnName); 上記の構文を理解するために、最初にテーブルを作成しましょう- mysql> create table demo65 −> ( −> id int not null primary