1

Konu: 6.da çalışan sql 9.0 da hata veriyor.

Arkadaşalr merhaba.
6.0 da aşağıdaki sorgu satırı sorunsuz çalışırken 9.0 da şöle bir hata veriyor.
======================
SQL : ORDER BY Clause is invalid
======================
Sorgu sisteminde değişikliklermi oldu?
Aşağıda tablo yapıları hakkında da açıklama var.

*---------
select hareket,count(*),(count(*)*100)/sayi_tut from analiz\14_,hareketler  where kr=1 .and. hareket=hareketler.hareket_ad group by hareket order by hareketler.sira into cursor kulupana_grid
*---------

14_ isimli tablomda hareket kolonum var. içerisinde tekrarlanan değerler var. aaa,bbb,aaa,bbb,ccc gibi
hareketler tablomda da hareket_ad isimli kolonum var ve içerisinde hareketler tanımlı
aaa,bbb,ccc,ddd,eee gibi ve sira isimli kolonda da (buraya göre index var) 2,1,3,4,5 ... gibi olmasını istediğim sıra bilgileri var.
Sorgunun içindeki sayi_tut değeride 100 gibi sabit değer olduğunu düşünebilrisiniz.

Bunun 9.0 da neden çalışmadığını bulamadım.
Yardımlarınız için teşekkür ederim.

2

Re: 6.da çalışan sql 9.0 da hata veriyor.

Visual Fox Pro
SET ENGINEBEHAVIOR 70

bu kodu basa eklersen hata almayi onlemis olursun

VFP7 den sonra SQL uyumlulugu degisti ve SQL server mantigina uyduruldu.

VFP9 helpte

SET ENGINEBEHAVIOR Command kısmına bak orada gerekli aciklamalar var

3

Re: 6.da çalışan sql 9.0 da hata veriyor.

Çok Teşekkürler sorun çözüdü.

4

Re: 6.da çalışan sql 9.0 da hata veriyor.

Merhaba,

Soykan açıklamış sorunun neyden kaynaklandığını.  Benim tavsiyem bu son SQL uyumluluğuna geçmen.

Visual Fox Pro
Select Hareket, Count(*), (Count(*) * 100) / Sayi_Tut

    From Analiz\14_, Hareketler
    Where kr=1 .And. Hareket = Hareketler.Hareket_Ad
    Group By Hareket
    Order By Hareketler.Sira
    Into Cursor KulupAna_Grid

Yerine

Visual Fox Pro
Select Hareket, Count(*), (Count(*) * 100) / Sayi_Tut

    From Analiz\14_ A Inner Join Hareketler B
      On A.Hareket = B.Hareket_Ad
    Where A.kr=1
    Group By A.Hareket
    Order By 1
    Into Cursor KulupAna_Grid

Aslında hata sıralamayı yapacağı sahanın son oluşan tabloda olmamasından kaynaklanıyor.

/o---------------------o\
     www.haser.com
\o---------------------o/