Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Corte automático de dados CHAR na inserção na coluna VARCHAR


Você pode conseguir fazer isso funcionar usando gatilhos do MySQL. Aqui está alguma documentação:https://dev.mysql.com /doc/refman/5.5/en/create-trigger.html

E um exemplo:
DROP TABLE IF EXISTS tmp;
CREATE TABLE tmp (`txt` varchar(50));
DROP TRIGGER IF EXISTS insert_tmp;
CREATE TRIGGER insert_tmp BEFORE INSERT ON tmp FOR EACH ROW SET NEW.txt=TRIM(NEW.txt);
INSERT INTO tmp VALUES ("        abc   "), ("efg      ");
SELECT txt, LENGTH(txt) FROM tmp;

Resultado:
|abc|3|
|efg|3|