sql >> Databasteknik >  >> RDS >> Mysql

Använda variabel för att ställa in mysql INNODB AUTO_INCREMENT tabellvärde

Försök:

CREATE TABLE `test_table` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, 
  PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=1;

SET @`tmpvar` := 12345;

SET @`stmt_alter` := CONCAT('ALTER TABLE `test_table` AUTO_INCREMENT = ', @`tmpvar`);

PREPARE `stmt` FROM @`stmt_alter`;
EXECUTE `stmt`;
DEALLOCATE PREPARE `stmt`;

SQL Fiddle-demo

UPPDATERA

Du kan använda 13.5 SQL-syntax för förberedda påståenden för 13.1.14 SKAPA TABELL Syntax .

SET @`tmpvar` := 12345;

SET @`stmt_create` := CONCAT('CREATE TABLE `test_table` (
    `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, 
    PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=', @`tmpvar`);

PREPARE `stmt` FROM @`stmt_create`;
EXECUTE `stmt`;
DEALLOCATE PREPARE `stmt`;

SQL Fiddle-demo




  1. SQL Server AlwaysOn Tillgänglighetsgrupper:Installation och konfiguration, del 2

  2. Vad är det bästa sättet att skapa och fylla i en taltabell?

  3. Importera sql-dump

  4. Hur drar man tillbaka ett saltat lösenord från databasen och autentiseringsanvändaren?