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

MySQL автоматично нарастване на непървичен ключ

Трябваше да се справя с подобен проблем, подреждайки неестествено дърво на категории. Ако вмъквате всички редове за един идентификатор наведнъж, можете да направите нещо подобно за всеки subId:

SET @seq = 0;
INSERT INTO test
  (id,  subId,            text) VALUES
  (_id, @seq := @seq + 1, 'Some text')
;

Ако трябва да „добавите“ ред към id, можете да зададете @seq с

SELECT IFNULL(MAX(subId), 0) INTO @seq FROM test WHERE id = _id;

Това, разбира се, ще изисква управление на идентификатора от приложението, а не от mySQL.

Можете да направите същото като последния кодов блок, за да получите и следващия наличен идентификатор.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails:показване на изображение от поле на blob в база данни

  2. JOIN заявки срещу множество заявки

  3. Проблеми с използването на MS Access като преден край на база данни на MySQL?

  4. Получавате максимален ред в групата?

  5. Има ли начин да направите името на таблица динамично в заявка?