sql >> Databasteknik >  >> RDS >> Mysql

Hur man använder Auto Increment i Varchar-data Skriv in PHP och MYSQL?

MYSQL 5.7.5:

Du kan uppnå målet med Genererade kolumner och detta .

Inte testad

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

För din bekvämlighet,

MSSQL:

Den enklaste metoden är att helt enkelt göra en beräknad kolumn. Den använder en så kallad "beräknad" kolumn tillsammans med en IDENTITY-kolumn.

    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;

Det returnerar följande (notera att den automatiska ökningen fungerade):

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



  1. Oracle-tabelldata för att INSERT-satser med JAVA

  2. Skapa datum från år, månad och dag

  3. Varför får jag ett formatfel:Egenskapen ansluter 'v$session.program' till Oracle?

  4. Kan inte installera mysql2 for rails 3 på Windows