Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie verwende ich Auto Increment in Varchar-Datentypen in PHP und MYSQL?

MYSQL 5.7.5:

Sie können das Ziel erreichen, indem Sie generierte Spalten verwenden und dies .

Nicht getestet

CREATE TABLE TEST ( 
     ProdID VARCHAR(20) AS CONCAT('PR','',PID) STORED,
    PID INT auto_increment)

Zu Ihrer Bequemlichkeit,

MSSQL:

Die einfachste Methode besteht darin, einfach eine berechnete Spalte zu erstellen. Es verwendet eine sogenannte "berechnete" Spalte in Verbindung mit einer IDENTITY-Spalte.

    CREATE TABLE Test
             (
              ProdID AS CAST('PR'+RIGHT('000'+CAST(RowNum AS VARCHAR(3)),3) AS VARCHAR(30)) PERSISTED
             ,ProdName VARCHAR(30)
,RowNum INT IDENTITY(1,1) 
             );


  INSERT INTO Test (ProdName)
  SELECT 'Thread' UNION ALL
  SELECT 'Button Thread' UNION ALL
  SELECT 'Coat Thread';

  SELECT ProdID, ProdName FROM Test;

Das gibt Folgendes zurück (beachten Sie, dass das automatische Inkrement funktioniert hat):

 ProdID                         ProdName
 ------------------------------ ------------------------------
 PR001                          Thread
 PR002                          Button Thread
 PR003                          Coat Thread