Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

SQL LIKE क्वेरी विफल - तैयार कथन में घातक त्रुटि

LIKE के लिए खंड, इसका उपयोग करें:

SELECT ARTICLE_NO FROM AUCTIONS1 WHERE upper(ARTICLE_NAME) LIKE CONCAT('%', ?, '%')

तालिका के नाम के लिए, तालिका नामों को पैरामीटर के रूप में रखना एक अत्यंत खराब प्रथा है।

अगर किसी कारण से आपको अभी भी इसे करने की आवश्यकता है, तो आपको क्वेरी तैयार करने से पहले इसे क्वेरी टेक्स्ट में एम्बेड करना होगा:

$countQuery = "SELECT ARTICLE_NO FROM $table_name WHERE upper(ARTICLE_NAME) LIKE CONCAT('%', ? ,'%')";
if ($numRecords = $con->prepare($countQuery)) {
    $numRecords->bind_param("s", $brand);
    $numRecords->execute();
    $data = $con->query($countQuery) or die(print_r($con->error));
    $rowcount = mysql_num_rows($data);
    $rows = getRowsByArticleSearch($query, $table, $max);
    $last = ceil($rowcount/$page_rows);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP में तैयार mysqli क्वेरी में पैरामीटर को कैसे अनदेखा करें?

  2. Java.sql.DriverManager.getConnection(...) क्यों लटक रहा है?

  3. एमएस एसक्यूएल सर्वर 2008 के साथ एंड्रॉइड कनेक्ट करना

  4. MySQL INSERT डेटा उचित डीबी में संग्रहीत नहीं होता है, केवल अस्थायी?

  5. AWS RDS पर MySQL डेटाबेस और Oracle डेटाबेस के साथ JDeveloper का उपयोग करना, भाग 1