sql >> Database >  >> Database Tools >> phpMyAdmin

Hoe automatische verhogingen te hashen in mysql

Als je dit om de een of andere reden echt nodig hebt, kun je dit bereiken met behulp van een aparte tabel voor sequencing en een BEFORE trigger

Tabelschema's:

CREATE TABLE table1_seq
(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
CREATE TABLE table1
(id VARCHAR(32) NOT NULL DEFAULT 0, name VARCHAR(32));

De trigger

DELIMITER $$
CREATE TRIGGER tg_bi_table1
BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
  INSERT INTO table1_seq () VALUES ();
  SET NEW.id = MD5(LAST_INSERT_ID());
END$$
DELIMITER ;

Nu kunt u rijen invoegen in uw table1 tafel

INSERT INTO table1 (`name`) VALUES ('New York'),('Chicago'),('Sydney'),('Berlin');

of selecteer

SELECT * FROM table1 WHERE id = MD5(2);

Hier is SQLFiddle demo



  1. Is het mogelijk om te concluderen of MySQL wordt uitgevoerd vanaf de PhPMyAdmin-verbindingsfoutpagina?

  2. Combineer select top 1 SQL-statements

  3. Te veel parameterwaarden vertragen de query

  4. Eenvoudige wijziging van het OpenCart-thema