Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да замените приписването на автоматично увеличаващ се първичен ключ при вмъкване на стойност в MySQL таблица?

Не е нужно да деактивирате auto_increment отличителен белег. Когато вмъкнете ред в таблицата и укажете стойността на първичния ключ в реда, идентификаторът, който искате, се съхранява в базата данни. auto_increment се използва само когато пропуснете полето за първичен ключ.

РЕДАКТИРАНЕ:Мислех, че мога да дам примери за това:

mysql> describe test;
+-------+------------------+------+-----+---------+----------------+
| Field | Type             | Null | Key | Default | Extra          |
+-------+------------------+------+-----+---------+----------------+
| id    | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| value | varchar(45)      | NO   |     | NULL    |                |
+-------+------------------+------+-----+---------+----------------+
2 rows in set (0.02 sec)

mysql> insert into test (value) values ('row 1');
Query OK, 1 row affected (0.06 sec)

mysql> select * from test;
+----+-------+
| id | value |
+----+-------+
|  1 | row 1 |
+----+-------+
1 row in set (0.00 sec)

mysql> insert into test values (15, 'row 2');
Query OK, 1 row affected (0.03 sec)

mysql> select * from test;
+----+-------+
| id | value |
+----+-------+
|  1 | row 1 |
| 15 | row 2 |
+----+-------+
2 rows in set (0.00 sec)

РЕДАКТИРАНЕ 2

mysql> insert into test (id, value) values (3, 'row 3');
Query OK, 1 row affected (0.00 sec)

mysql> select * from test;
+----+-------+
| id | value |
+----+-------+
|  1 | row 1 |
| 15 | row 2 |
|  3 | row 3 |
+----+-------+
3 rows in set (0.00 sec)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL подреждане по преди групиране по

  2. pandas - Обединяването на колони с низове не работи (бъг?)

  3. как да дам същия сериен номер за група записи в mysql

  4. Как да изтриете рекурсивно елементи от таблицата?

  5. грешка:'Не мога да се свържа с локален MySQL сървър чрез сокет '/var/run/mysqld/mysqld.sock' (2)' -- Липсва /var/run/mysqld/mysqld.sock