sql >> Database >  >> RDS >> Mysql

PHP MySQL PDO:voorloopnullen van zerofill int-kolommen behouden?

je mag LPAD . gebruiken ?

probeer dit:SELECT *, LPAD( Id, 3, '0') AS zero_Fill_Id FROM test

zou 3 moeten veranderen volgens int size:misschien 4 voor deze situatie?

Bijwerken:

Ik denk niet dat het een goede gewoonte is om int naar decimaal te veranderen, daarom ga ik hier niet dieper op in, je kunt op dat onderwerp zoeken.

Ik denk dat je mysqlnd gebruikt driver, wat ik erover heb gevonden (controleer of deze is ingeschakeld Hoe weet ik of MySQLnd de actieve driver is? ):

source:Numerieke typen verkrijgen van MySQL met PDO?

In dit geval is er PDO::ATTR_STRINGIFY_FETCHES die in uw geval moet worden ingesteld op true , je kunt ook proberen PDO::ATTR_EMULATE_PREPARES attribuut verder zie:BOB MySQL:gebruik PDO ::ATTR_EMULATE_PREPARES of niet?

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

Ik hoop dat dit in ieder geval of iemand anders helpt :))



  1. SQLiteException:onbekende database

  2. MySQL NULLIF() uitgelegd

  3. Bengaalse tekst wordt niet weergegeven in Unicode CSV-bestand

  4. LEN() versus DATALENGTH() in SQL Server