sql >> Database teknologi >  >> RDS >> Mysql

Laravel Veltalende finder tilbage null

Dette skyldes, at tal, der starter med 0, betragtes som et oktal af PHP, som pr.:http://php.net/manual/en/language.types.integer.php

Det ser ud til, at PHP konverterer tallet til en decimal, før MySQL-forespørgslen udføres, hvilket betyder, at forespørgslen er dannet med et forkert tal.

For eksempel:

Support::find(02155);

Bliver:

'SELECT * FROM mytable WHERE id = 1133'

Løsningen

Jeg løste dette ved at typecaste tallet til et heltal ved hjælp af (int), før jeg brugte det med Eloquents find-metoden. Det vil også fungere, hvis du sender tallet som en streng (dvs. i anførselstegn), som sådan:

Support::find('02155');


  1. Generer n rækker af NULL i PostgreSQL

  2. SQL Venstre Join

  3. Google kalender API :Vælger/opretter du kalendere?

  4. MySQL Vælg DISTINCT flere kolonner baseret på unikheden af ​​en række?