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

hvad er det, jeg gør forkert, mens jeg konverterer

prepare() går med execute()

Udarbejdede udsagn fungerer grundlæggende sådan her:

  1. Forbered:En SQL-sætningsskabelon oprettes og sendes til databasen. Visse værdier efterlades uspecificerede, kaldet parametre (mærket "?"). Eksempel:

    INSERT INTO mtTable VALUES(?, ?, ?)

  2. Databasen analyserer, kompilerer og udfører forespørgselsoptimering på SQL-sætningsskabelonen og gemmer resultatet uden at udføre det

  3. Udfør:På et senere tidspunkt binder applikationen værdierne til parametrene, og databasen udfører sætningen. Applikationen kan udføre sætningen så mange gange den vil med forskellige værdier

prøv med nedenstående kode

<?php

$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$rowperpage = 3;
$offset     = 0;

// counting total number of posts
$query = "SELECT count(id) AS allcount  FROM posts";
$stmt  = $db->query($query)->fetchColumn();

/******** The ABOVE QUERY LOOKS POINTLESS TO ME AS YOU NOT USING THE RESULTS FROM THAT QUERY*/

// select first 3 posts

$qry = "SELECT * FROM posts ORDER BY id ASC LIMIT ?,? ";
$stm = $db->prepare($qry);
$stm->execute(array($offset,$rowperpage));
$results = $stm->fetchall(PDO::FETCH_ASSOC);

if (count($results) > 0) {

    foreach ($results as $row) {

        $id           = $row['id'];
        $title        = $row['title'];
        $content      = $row['content'];
        $shortcontent = substr($content, 0, 160) . "...";
        $link         = $row['link'];

    }
} else {

    echo "No records found";
}
?>



  1. DATE_FORMAT i postgresql

  2. Integrering af billede med jQuery AutoComplete

  3. Hvordan bruger man django-modeller med fremmednøgler i forskellige DB'er?

  4. java.sql.SQLEundtagelse:Ingen passende driver fundet jdbc:oracle:thin