Re: PDO returns all data as strings?!

From: Date: Tue, 04 Apr 2023 20:26:12 +0000
Subject: Re: PDO returns all data as strings?!
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-328180@lists.php.net to get a copy of this message
No, that doesn't change anything. Meanwhile I've tried out the SQLite3 classes and found that their API is very similar. I had almost no work adapting my code. These classes work fine and return the real data type, not a converted view of it. And it even allows resolving the SQL statement including bound parameter values which is helpful for debugging. I'll keep that. -Yves -------- Ursprüngliche Nachricht -------- Von: Aziz Saleh <azizsaleh@gmail.com> Gesendet: Montag, 3. April 2023, 21:59 MESZ Betreff: PDO returns all data as strings?! Try setting this option and see if it helps: PDO::ATTR_STRINGIFY_FETCHES => false On Mon, Apr 3, 2023 at 3:31 PM Yves Goergen via php-general <php-general@lists.php.net <mailto:php-general@lists.php.net>> wrote:
    Hello,
    I just noticed a weird behaviour of PDO for my SQLite database and
    found
    a hint online. Just wanted to check here.
    Is it correct that PDO will return all queried values from the fetch
    method as string, no matter the actual data type? I couldn't find that
    notice by glancing over the documentation. (Such an unexpected note
    should be very well visible.)
    If that's the case, can it be fixed immediately (for PHP 7.4 and
    later)?
    Or what alternatives to PDO could I use for SQLite only? I need
    prepared
    statements and parameter binding.
    I know how SQLite handles data types, and it includes remembering the
    type that was given to it. If PHP/PDO then destroys it, it's of very
    limited use.
    My code looks like this:
          $ps = $this->connection->prepare('select * from table');
          $ps->execute();
          $record = $ps->fetch(PDO::FETCH_ASSOC);
    -Yves


« previous php.general (#328180) next »