SELECT  a.ctn_no,    
        a.vessel_code,    
         a.voyage,  
    FROM a,    
        b
   WHERE ( a.vessel_code =* b.vessel_code)     
这是我程序原来的SQL代码,但是数据库升级到2005兼容性调整到9.0后,提示不在支持=*和*=这样的连接可是我程序有很多这样的地方而且很多都是PB自己生成的 (垃圾语句,首先说明我不用PB)我该怎么解决呢~!提出可行解决方案者追加500分~!!~

解决方案 »

  1.   

    SELECT  a.ctn_no,     
            a.vessel_code,     
             a.voyage,   
        FROM a left join  b 
          on ( a.vessel_code = b.vessel_code)     
      

  2.   

    SELECT  a.ctn_no,     
            a.vessel_code,     
             a.voyage,   
        FROM a right join  b 
          on ( a.vessel_code = b.vessel_code)     
      

  3.   

    但是我还有很多程序是这样的string s
    s="SELECT  a.ctn_no,a.vessel_code,a.voyage,FROM a,b WHERE a.vessel_code =* b.vessel_code"s=s+" and a.id=10"有的语句后面会加and其实 改成right join  我有办法 把PB7升级到PB9 就可以解决了~!
    就会编程  小梁兄的 语句了 还是很谢谢你
      

  4.   

    PB自动生成这种语法?...那就自己改了..要不把SQL2005的兼容级别降低.
      

  5.   

    而且很多都是PB自己生成的 (垃圾语句,首先说明我不用PB) PB高版本不会生成这种语言.对应改为 left join , right join就行了.
      

  6.   

    而且很多都是PB自己生成的 (垃圾语句,首先说明我不用PB)  PB高版本不会生成这种语言. 对应改为 left join , right join就行了.语句还是自己写的放心哦
      

  7.   

    改为 left join , right join
      

  8.   


    改用left join 、right join 、full join