sql >> Databasteknik >  >> RDS >> Mysql

PHP MySQL PDO:hur man bevarar inledande nollor i int-kolumner med nollfyllning

du kan använda LPAD ?

prova detta:SELECT *, LPAD( Id, 3, '0') AS zero_Fill_Id FROM test

bör ändra 3 enligt int storlek:kanske 4 för denna situation?

Uppdatering:

Jag tror inte att ändra int till decimal för att vara bra praxis, varför jag inte ska gå djupare på detta, du kan söka på det ämnet.

Jag tror att du använder mysqlnd drivrutin, vad jag har hittat om den (kontrollera om den är aktiverad Hur vet man om MySQLnd är den aktiva drivrutinen? ):

källa:Hur får du numeriska typer från MySQL med PDO?

I det här fallet finns det PDO::ATTR_STRINGIFY_FETCHES som i ditt fall bör vara inställd på true , du kan också prova PDO::ATTR_EMULATE_PREPARES attribut längre fram se:PDO MySQL:Använd SUB ::ATTR_EMULATE_PREPARES eller inte?

...
$pdo->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, true);

Hoppas detta hjälper i alla fall eller någon :))



  1. Uppdatera data via en tabellvärderad funktion i SQL Server

  2. Hur kör jag Google Cloud SQL bara när jag behöver det?

  3. Kontrollera och optimera MySQL-databasen automatiskt med Crontab/Cron

  4. Summa över värden per månad i millisekunder