是不是有中文标点阿
你这样写sql语言的方法很不好

解决方案 »

  1.   

    最后的"1"这样写吧   '" & "1" & "'
      

  2.   

    SELECT  production.pro_name as pro_name , 
    production.pro_index as pro_index , 
    buy_order_mingxi.cost as cost , 
    buy_order_mingxi.cost_per_unit as cost_per_unit , 
    buy_order_mingxi.number as number , 
    buy_order.buy_order_number as buy_order_number , 
    production.unit as unit , 
    buy_order.sup_index as sup_index , 
    buy_order.send_date as send_date , 
    supporter.sup_com_name as sup_com_name , 
    supporter.sup_coresponder as sup_coresponder , 
    supporter.tel_1 as tel_1 , 
    supporter.tel_2 as tel_2,
    supporter.fax as fax 
    FROM  production , 
    buy_order_mingxi , 
    buy_order , 
    supporter 
    WHERE  production.pro_index=buy_order_mingxi.pro_index 
    AND  buy_order_mingxi.buy_order_number=buy_order.buy_order_number 
    AND  buy_order.sup_index=supporter.sup_index 
    AND buy_order.buy_order_number='1'为什么不这么贴呢
    这样不就清楚多了么
    还有建议你表as一个别名不知道你用什么数据库
    我将你的语句copy到sqlserver
    语法检查是通过的
    那么我早前以为可能有中文标点的推断是错误的既然说关键字错误是不是
    将number,unit一类看上去象关键字的别名改个别的名字啊
    比如number_1,unit_1再试试看
      

  3.   

    SELECT production.pro_name as pro_name , production.pro_index as pro_index , buy_order_mingxi.cost as [cost] , buy_order_mingxi.cost_per_unit as cost_per_unit , buy_order_mingxi.number as [number] , buy_order.buy_order_number as buy_order_number , production.unit as [unit] , buy_order.sup_index as sup_index , buy_order.send_date as send_date , supporter.sup_com_name as sup_com_name , supporter.sup_coresponder as sup_coresponder , supporter.tel_1 as tel_1 , supporter.tel_2 as tel_2,supporter.fax as [fax] FROM [production] , buy_order_mingxi , buy_order , supporter WHERE production.pro_index=buy_order_mingxi.pro_index AND buy_order_mingxi.buy_order_number=buy_order.buy_order_number AND buy_order.sup_index=supporter.sup_index AND buy_order.buy_order_number='1' 
    关键字用[]括起来.