SQL Hata: SQL sözdizimi hatası

3 Cevap php

Error Message: SQL Hata: SQL sözdizimi bir hata var; yakınındaki kullanılacak doğru sözdizimi için MySQL sunucu sürümü karşılık kılavuzunu kontrol edin 'VE domain =' ard.qc 'AND snapshot_id = 2010 VE locale =' at line 1 tr''

SQL Query:

SELECT 
  entity_id, 
  content_id
FROM collateral_cms_mapping 
WHERE entity_id IN ({$entity_ids}) 
  AND domain = '{$this->getSite()->getInternalId()}' 
  AND snapshot_id = {$this->getSnapshotDao()->getCurrentSnapshot()} 
  AND locale = '{$locale}'

Değeri değiştirmek ve dize birleştirme sonra burada gerçek SQL olduğunu:

    SELECT 
      entity_id, 
      content_id 
    FROM
      collateral_cms_mapping 
   WHERE 
     entity_id 
     IN 
      () 
     AND 
      domain = 'ard.qc' 
     AND 
      snapshot_id = 2009 
     AND 
      locale = 'en_US'

Herhangi Öneriler?

3 Cevap

$entity_ids değeri nedir? Muhtemelen boş, böylece sorgu geçersiz IN (), hangi içerir.

Sen dizeleri bitiştirmek için yok.

It looks like the prepared query is faulty somewhere in the IN ({$entity_ids}). echo the query string to check your IN statement.

Kesinlikle IN deyimi bakmak. Ben MySQL ile aşina değilim, ben ((Yemin olmasa da)) bendi DB2 veya Oracle izin boş bir IN inanmıyorum.