Como criar customizar chave primária no MySQL?, exemplo eu tenho uma tabela e o nome da tabela é X
, eu tenho um campo de tabela como ID
, Code
, Name
.
Receio que se eu tiver 1000 usuários e quando eles entrarem juntos resultará em destruição
e eu quero :
INSERT INTO `X` (`ID`,`Code`,`Name`) VALUES
('P3K','Alex'), // this primary key is "P3K-1"
('SOS','Force'), // this primary key is "SOS-1"
('P3K','Bash'), // this primary key is "P3K-2"
No momento, estou usando TRIGGER ( BEFORE INSERT ) para isso, como este:
SET NEW.`ID` = CONCAT(NEW.`Code`,'-',IFNULL(SUBSTRING_INDEX((
SELECT `x`.`Code` FROM `X` WHERE
X.`Code` = NEW.`Code` and
ORDER BY X.`Code` DESC
LIMIT 1 ),'-',-1),0) + 1))
Eu não tentei este código, mas meu ponto é:
- Inserção do usuário
- Antes de inserir, verifiquei o ÚLTIMO Primário
- IF Null então eu defino 0, senão eu corto o símbolo (-) e pego a última parte
- I incrementos (usando [+ 1])
- Final, eu concat
CODE
e New Number.
estou enganado? LOL, e se for verdade, como criar assim? (EU ACHO) Podemos fazer isso e talvez ninguém saiba disso, como a IA no MySQL funciona tão perfeitamente?