Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak ustawić AUTO_INCREMENT z innej tabeli?

Ten kod utworzy dla Ciebie procedurę:

CREATE PROCEDURE `tbl_wth_ai`(IN `ai_to_start` INT)
BEGIN

SET @s=CONCAT('CREATE TABLE IF NOT EXISTS `table_name` (
  `id` mediumint(6) unsigned NOT NULL AUTO_INCREMENT,
  `columnOne` tinyint(1) NOT NULL,
  `columnTwo` int(12) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT = ', `ai_to_start`);

  PREPARE stmt FROM @s;
  EXECUTE stmt;
  DEALLOCATE PREPARE stmt;
END;

Następnie możesz wywołać CALL tbl_wth_ai(2); przekazywanie parametru w nawiasach.

Na przykład:

CALL tbl_wth_ai((SELECT id FROM `ttest` WHERE c1='b'));


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego używać kluczy obcych bez żadnych działań przy usuwaniu lub aktualizowaniu?

  2. Tworzenie i używanie procedur składowanych MySQL — samouczek

  3. PHP MySQL PDO lastInsertID powoduje błąd krytyczny

  4. Zaktualizuj wartość kolumny do LICZBY wierszy dla określonych wartości w tej samej tabeli

  5. Użyj związku lub połączenia — co jest szybsze