三张表gdzc_list gdzc_table  gdzc_zcdj这个在 sqlserver05  里面运行,没有问题 在mysql 里面运行就报错
set names gbk       //gb2312 都没用    如果我是gbk   就报错  说 select  就报第二行有错
SELECT gdzc_table.gdzc_id, gdzc_list.mc, gdzc_list.gdzc_ggxh, gdzc_list.ghsid, 
      gdzc_list.wp_dw, gdzc_table.zt, gdzc_table.gdzc_key, gdzc_zcdj.bm, gdzc_zcdj.syr, 
      gdzc_zcdj.lyr, gdzc_zcdj.usetime
FROM gdzc_list INNER JOIN
      gdzc_table ON gdzc_list.id = gdzc_table.id INNER JOIN
      gdzc_zcdj ON gdzc_table.gdzc_id = gdzc_zcdj.cp_id

解决方案 »

  1.   

    MYSQL什么版本,在5.5下测试没有问题
      

  2.   

    错误:  1064 you have an error int your SQL syntax;check the manual that corresponds to your MySQL server version for the right syntax to use near 
    'SELECT gdzc_table.gdzc_id,
                 gdzc_list.mc, 
                 gdzc_list,  ' at line 2
      

  3.   

     INNER JOIN
      gdzc_table ON gdzc_list.id = gdzc_table.id INNER JOIN
      gdzc_zcdj ON gdzc_table.gdzc_id = gdzc_zcdj.cp_id
    中的id们的类型一样吗?
      

  4.   

    类型都是一样的 int 
     gdzc_table 里面没有主键
      

  5.   

    报错不是下面的id 错误 是 select 那里有错
      

  6.   

    提醒:也许是SQL Server里字段名不区分大小写,而My SQL里,默认字段名区分大、小写造成滴!
      

  7.   


    -- 同理:表名在SQL Server里不区分大、小写,而在My SQL里默认区分大小写!
      

  8.   

    看错误信息是不是大小写的问题啊。 是你的语法有错。测试一下如下语句是否正确。SELECT *
    FROM gdzc_list INNER JOIN
         gdzc_table ON gdzc_list.id = gdzc_table.id 
     INNER JOIN
         gdzc_zcdj ON gdzc_table.gdzc_id = gdzc_zcdj.cp_id
    如果有错就再试一下
    SELECT *
    FROM gdzc_list INNER JOIN
         gdzc_table ON gdzc_list.id = gdzc_table.id 逐步缩小范围定位错误的位置。
      

  9.   

    SELECT *
    FROM gdzc_list INNER JOIN
      gdzc_table ON gdzc_list.id = gdzc_table.id   这个没有问题  
    SELECT *
    FROM gdzc_list INNER JOIN
      gdzc_table ON gdzc_list.id = gdzc_table.id  
    INNER JOIN
      gdzc_zcdj ON gdzc_table.gdzc_id = gdzc_zcdj.cp_id这个就有了··55555