2013-07-29 82 views
0

我有問題的數據表和腳本從 http://datatables.net/development/server-side/php_cake cakephp。 我用了很多時間,但人無我有使用加入和服務器響應我datatable到cakephp連接表

MySQL Error: 1052.

問題是在這一行:

$sTable = "`clients` AS c JOIN users AS u ON (c.user_id = u.id)"; 

當我打印我的所有查詢,並將其粘貼在phpMyAdmin一切好的,但蛋糕會出錯。

我生成的SELECT:

SELECT SQL_CALC_FOUND_ROWS c.id, c.name, c.nip, c.adress, c.tel, c.tel2, c.email, c.created, c.id FROM clients c join users u ON(c.user_id = u.id)

 ORDER BY c.id asc 
     LIMIT 0, 10 

@edit

我改性殼聚糖對我的劇本,現在,它產生這樣的:

SELECT SQL_CALC_FOUND_ROWS c . id , c . name , c . nip , c . adress , c . tel , c . tel2 , c . email , c . created , c . id FROM clients AS c join users AS u ON c . user_id = u . id

 ORDER BY `c`.`name` asc 
     LIMIT 0, 10 

但它仍然無法正常工作。 (我在前綴和後綴和col名稱前使用了char'`')

+0

後完整的錯誤和SQL。 –

+0

問題出在查詢本身。查詢中有一個模棱兩可的字段。你能發佈完整的查詢嗎? – Perry

+0

我改變了我的第一篇文章。我添加了所有生成的查詢。我無法獲取所有的mysql錯誤,因爲我只看到MySQL錯誤:1052。 – marczak

回答

0

你需要創建一個與關係的視圖!

  1. 在MySQL創建視圖:

    CREATE VIEW 'the_view' AS 
        SELECT 
         a.id, 
         a.num_factura_proveedor, 
         b.nombre_comercial 
        FROM compras a 
         INNER JOIN terceros b ON a.tercero_id = b.id 
    
  2. 在服務器端腳本:

    $sTable = "the_view"; 
    
    //the columns of the view 
    
    $aColumns = array('id' , 'num_factura_proveedor', 'nombre_comercial'); 
    
    $sIndexColumn = "id";