Örneğin ETGQUOTADETAILTABLE tablosunda DATAAREAID, REFRECID, ROWNUM’dan oluşan unique indexe göre sonradan eklenmiş kayıtları silmek için:
DELETE FROM ETGQUOTADETAILTABLE WHERE
(RECID NOT IN
(SELECT MAX(RECID) AS recs
FROM ETGQUOTADETAILTABLE AS detailTable
GROUP BY DATAAREAID, REFRECID, ROWNUM))
NOT: Kayıt 2den fazla tekrar gösteriyorsa gösterdiği tekrar kadar scripti çalıştırmak gerekir.
DELETE FROM ETGQUOTADETAILTABLE WHERE
(RECID NOT IN
(SELECT MAX(RECID) AS recs
FROM ETGQUOTADETAILTABLE AS detailTable
GROUP BY DATAAREAID, REFRECID, ROWNUM))
NOT: Kayıt 2den fazla tekrar gösteriyorsa gösterdiği tekrar kadar scripti çalıştırmak gerekir.
Merhaba Fatih Bey;
PermalinkPaylaştığınız yazıyı okudum Fakat başka bi konuda problem var axapta üzerinden Silinemeyen bir tablo verisine SQL üzerinden ulaşıp silmek mümkünmüdür ve mümkünse nasıl bir yol izlemeliyim ?
İyi ÇAlışmalar…
Tabiki mümkündür. Sql serverda normal durumda yapabildiğiniz butun işlemleri AX db’si içinde yapabilirsiniz. Ancak Ax’in iş mantığını devre dışı bıraktığınız için ve recID gibi bir alan olduğu için eklemeden uzak durmalısınız . Update ve delete işlemlerini yapabilirsiniz.
PermalinkAncak dikkatli olmalısınız backup almanızı tavsiye ederim. Çok elzem olmadığı sürece kesinlikle direk db de işlem yapmamalısız.