Sorgulama Proplemi (Stok No)

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Sorgulama Proplemi (Stok No)

Mesaj gönderen pro_imaj »

Arkadaşlar Daha Önceki Stok no değiştirme başlığındaki sorunumu çözemediğim için şöyle bir yol denedim. Ama kafanız karışmasın diye yeni bir soru soruyorum.


Mssql veri tabanında Malkodu alanı aynı olan kayıtları listeletmek veya bu kayıtları teke düşürmek .


Şu an farklı bir sebepten dolayı Malkodu aynı olan birkaçyüz ürün var ben aynı olan ürünlerin birini silmek istiyorum nasıl yaparım.


Örn;
MalKodu
A100---->Bu kayıtla (1)
B200---->Bu Kayıtla (2)
C300
A100---->Bu kayıt Aynı (1)
B200---->Bu kayıt Aynı (2)
U500

Yani. Malkodu alanında aynı olan kayıtların birini silecem
Sonuc Şöyle olacak

MalKodu
A100
B200
C300
U500

Not : Bu işlemi yapınca Sorun Bitiyor Mssql Veri tabanında bu alanı Primar Key yapıp işlemi bitirecem.


Yardımlarınız İçin Teşekkür ederim.

Kolay Gelsin.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
tsamim
Üye
Mesajlar: 76
Kayıt: 19 Ağu 2004 03:08
Konum: izmir

Mesaj gönderen tsamim »

merhabalar ;

bu işlemi stok table'ını gecici bir table'a aktararak yapabilirsin
gecici table'a insert yaparken o stok kodundan daha önce olup olmadığını kontrol edersin.
varsa insert etmezsin.
daha sonra asıl table'ı delete * from stok diyerek (örnek olarak) silip
primary key tanımlayıp gecici table'ından asıl table'a insert edersin.

Gecici table yerine memdata'da kullanabilirsin delphi tarafında bir form üzerinde kolay gelsin.
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Tşk ederim

Mesaj gönderen pro_imaj »

Merhaba Cevabınız için tşk ederim.


Mantık olarak anladım ama koda dökemiyorum.



Yani aynı query üzerindeki veriler olduğu için proplem çıkıyor.


Benim bu işlemi farklı bir yere almadan yapmam gerek yani aynı table ile aynı olan kayıtları silmek.

Teşekkür ederim.

Kolay gelsin
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Birde TBookmark sorunu

Mesaj gönderen pro_imaj »

sizin söylediğiniz< yapabilmem için TBookmark kullanmak zorundayım bende tam bilmiyorum okaonuyu tşk edeim
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

s.a

kolay gelsin bunu sql in distinct komutu ile yapabilirsin

query.close,
query.sql.clear;
query.sql.add('select distinct maladi from tablo');
query.open


bu komutla maladi aynı olan kayıtları tek gibi gösterebilirsin...
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Merhaba

Mesaj gönderen pro_imaj »

Ben kayıtları tek gibi göstermek değilde.
aynı olan kayıtları silmek istiyorum.

Eğer silmezsem program çalışırken hata verecek.

Mutlaka Silmem gerek.

Saygılarımla
Kolay gelsin.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

sorguyla aynı olanları listele ve tek tek sil çok fazla değilse
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

olmuyor

Mesaj gönderen pro_imaj »

Olmuyor

toplam 10.000 kayıt var.

Bu konu çok kafamı karıştırdı ve halen yapamadım.

Birazda acil bir sorundu.

inşalalh yardımlarınızla çözüme kavuşacak.

Saygılarımla
Teşekkür ederim
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

Merhaba

Mesaj gönderen pro_imaj »

Arkadaşlar
Fikirleriniz doğrultusunda şöyle bişey yapmam işimi çözüyor ama olmuyor

şöyle bişey yapmak istiyorum ama galiba eksik.

Tablodaki aynı olan kayıtları listeletip bu kayıtları farklı bir tabloya kopyalamak istiyorum ama aşağıda yazdığım kod. bütün hepsini kopyalıyor.

Yardımlarınız için teşekkürler

SELECT DISTINCT MalKodu
FROM FINSAT473.STK


insert into FINSAT459.STK
(ValorGun,
UseSetUrun,
UseSatSiparis,
UseSatRezervasyon,
UseSatFatIrs,
UseGirisIslem,
UseCikisIslem,
UseAlimSiparis,
UseAlimRezervasyon,
UseAlimIrsFat,
UreticiKodu,
TipKod,
TeminYeri,
TeminSuresi,
TahminiStok,
SonSayimTarih,
SonSayimSonuc,
SonSayimFark,
SonMlyTarih,
SonMlySekli,
SonMlyBirimFiyat,
SonAlimFatTarih,
SonAlimEvrakNo,
SonAlimCHK,
SonAlimBF,
SirketWebAdres,
SF6ValorGun,
SF6KDV,
SF6DovizCinsi,
SF6Birim,
SF5ValorGun,
SF5KDV,
SF5DovizCinsi,
SF5Birim,
SF4ValorGun,
SF4KDV,
SF4DovizCinsi,
SF4Birim,
SF3ValorGun,
SF3KDV,
SF3DvzValorGun,
SF3DovizCinsi,
SF3Birim,
SF2ValorGun,
SF2KDV,
SF2DvzValorGun,
SF2DovizCinsi,
SF2Birim,
SF1ValorGun,
SF1KDV,
SF1DvzValorGun,
SF1DovizCinsi,
SF1Birim,
SatistanIade,
SatisSiparis,
SatislarHesabi,
SatisFiyatUstLimit,
SatisFiyatTip,
SatisFiyatAltLimit,
SatisFiyat6,
SatisFiyat5,
SatisFiyat4,
SatisFiyat3,
SatisFiyat2,
SatisFiyat1,

OzelKod,
Operator3,
Operator2,
Notlar,
Nesne3,
Nesne2,
Nesne1,
MlySekli,
MKDS,
MasrafMerkezi,
MalKodu2,
MalKodu,
MalAdi5,
MalAdi4,
MalAdi3,
MalAdi2,
MalAdi,
KritikStok,
Kod9,
Kod8,
Kod7,
Kod6,
Kod5,
Kod4,
Kod3,
Kod2,
Kod13,
Kod12,
Kod11,
Kod10,
Kod1,
KDVOran,
KayitTarih,
KayitSurum,
KayitSaat,
KayitKaynak,
Kaydeden,
KatSayi3,
KatSayi2,
KartTuru,
IskontoOran,
GuvenlikKod,
GumrukVergi,
GumrukGTIPN,
GumrukFon,
GrupKod,
GirTutar,
GirTarih,
GirRezervasyon,
GirMiktar,
GirKonsinye,
GirIskonto,
FireliMalKodu,
Fire,
DvzGirTutar,
DvzGirIskTutar,
DvzDvrTutar,
DvzCikTutar,
DvzCikIskTutar,
DvrTutar,
DvrTarih,
DvrMiktar,
DovizSF3KDV,
DovizSF3Birim,
DovizSF2KDV,
DovizSF2Birim,
DovizSF1KDV,
DovizSF1Birim,
DovizSatisFiyat3,
DovizSatisFiyat2,
DovizSatisFiyat1,
DovizCinsi,
DovizAlisFiyat3,
DovizAlisFiyat2,
DovizAlisFiyat1,
DovizAF3KDV,
DovizAF3Birim,
DovizAF2KDV,
DovizAF2Birim,
DovizAF1KDV,
DovizAF1Birim,
Degistiren,
DegisTarih,
DegisSurum,
DegisSaat,
DegisKaynak,
CikTutar,
CikTarih,
CikRezervasyon,
CikMiktar,
CikKonsinye,
CikIskonto,
CheckSum,
ButceKodu,
BlkMiktar,
Birim3,
Birim2,
Birim1,
BarKod3,
BarKod2,
BarKod1,
AzamiStok,
AlisFiyat3,
AlisFiyat2,
AlisFiyat1,
AlimSiparis,
AlimlarHesabi,
AlimdanIade,
AF3KDV,
AF3DovizCinsi,
AF3Birim,
AF2KDV,
AF2DovizCinsi,
AF2Birim,
AF1KDV,
AF1DovizCinsi,
AF1Birim)
(select
ValorGun,
UseSetUrun,
UseSatSiparis,
UseSatRezervasyon,
UseSatFatIrs,
UseGirisIslem,
UseCikisIslem,
UseAlimSiparis,
UseAlimRezervasyon,
UseAlimIrsFat,
UreticiKodu,
TipKod,
TeminYeri,
TeminSuresi,
TahminiStok,
SonSayimTarih,
SonSayimSonuc,
SonSayimFark,
SonMlyTarih,
SonMlySekli,
SonMlyBirimFiyat,
SonAlimFatTarih,
SonAlimEvrakNo,
SonAlimCHK,
SonAlimBF,
SirketWebAdres,
SF6ValorGun,
SF6KDV,
SF6DovizCinsi,
SF6Birim,
SF5ValorGun,
SF5KDV,
SF5DovizCinsi,
SF5Birim,
SF4ValorGun,
SF4KDV,
SF4DovizCinsi,
SF4Birim,
SF3ValorGun,
SF3KDV,
SF3DvzValorGun,
SF3DovizCinsi,
SF3Birim,
SF2ValorGun,
SF2KDV,
SF2DvzValorGun,
SF2DovizCinsi,
SF2Birim,
SF1ValorGun,
SF1KDV,
SF1DvzValorGun,
SF1DovizCinsi,
SF1Birim,
SatistanIade,
SatisSiparis,
SatislarHesabi,
SatisFiyatUstLimit,
SatisFiyatTip,
SatisFiyatAltLimit,
SatisFiyat6,
SatisFiyat5,
SatisFiyat4,
SatisFiyat3,
SatisFiyat2,
SatisFiyat1,

OzelKod,
Operator3,
Operator2,
Notlar,
Nesne3,
Nesne2,
Nesne1,
MlySekli,
MKDS,
MasrafMerkezi,
MalKodu2,
MalKodu,
MalAdi5,
MalAdi4,
MalAdi3,
MalAdi2,
MalAdi,
KritikStok,
Kod9,
Kod8,
Kod7,
Kod6,
Kod5,
Kod4,
Kod3,
Kod2,
Kod13,
Kod12,
Kod11,
Kod10,
Kod1,
KDVOran,
KayitTarih,
KayitSurum,
KayitSaat,
KayitKaynak,
Kaydeden,
KatSayi3,
KatSayi2,
KartTuru,
IskontoOran,
GuvenlikKod,
GumrukVergi,
GumrukGTIPN,
GumrukFon,
GrupKod,
GirTutar,
GirTarih,
GirRezervasyon,
GirMiktar,
GirKonsinye,
GirIskonto,
FireliMalKodu,
Fire,
DvzGirTutar,
DvzGirIskTutar,
DvzDvrTutar,
DvzCikTutar,
DvzCikIskTutar,
DvrTutar,
DvrTarih,
DvrMiktar,
DovizSF3KDV,
DovizSF3Birim,
DovizSF2KDV,
DovizSF2Birim,
DovizSF1KDV,
DovizSF1Birim,
DovizSatisFiyat3,
DovizSatisFiyat2,
DovizSatisFiyat1,
DovizCinsi,
DovizAlisFiyat3,
DovizAlisFiyat2,
DovizAlisFiyat1,
DovizAF3KDV,
DovizAF3Birim,
DovizAF2KDV,
DovizAF2Birim,
DovizAF1KDV,
DovizAF1Birim,
Degistiren,
DegisTarih,
DegisSurum,
DegisSaat,
DegisKaynak,
CikTutar,
CikTarih,
CikRezervasyon,
CikMiktar,
CikKonsinye,
CikIskonto,
CheckSum,
ButceKodu,
BlkMiktar,
Birim3,
Birim2,
Birim1,
BarKod3,
BarKod2,
BarKod1,
AzamiStok,
AlisFiyat3,
AlisFiyat2,
AlisFiyat1,
AlimSiparis,
AlimlarHesabi,
AlimdanIade,
AF3KDV,
AF3DovizCinsi,
AF3Birim,
AF2KDV,
AF2DovizCinsi,
AF2Birim,
AF1KDV,
AF1DovizCinsi,
AF1Birim from FINSAT473.STK)

Not: Neen alanları tek tek seçtiriyorsun derseniz alanlarda kilitli yani hata veren birkaç alan var onları almamak için

Teşekkür ederim
Kolay gelsin
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Kullanıcı avatarı
huseyinert
Üye
Mesajlar: 233
Kayıt: 19 Nis 2005 06:49
Konum: Bartın

Mesaj gönderen huseyinert »

gride aynı kayıtları listeletip döngü içinde sildirmeyi denedinizmi

ama sanırım aynı kayıttan bi tane kalması istiyorsunuz..
şu şekilde bi denerseniz olabilir belki

önce gride listeletin aynı kayıtları

bi butonlada

query.first;//ilk griddeki ilk kayıttayız
query.next//querydeki 2. sıradaki kayıtttayız
repeat
query.delete;
query.next
until(query.eof);


bu şekilde bi tane kayıt kalacak diğerleri silinecek ama gride önce listelet bu gridin üzerindeki kayıtları işleve alır

kolay gelsin
"Kula bela gelmez Hak yazmayınca,Hak bela yazmaz kul azmayınca..." MEVLANA
Kullanıcı avatarı
pro_imaj
Kıdemli Üye
Mesajlar: 1364
Kayıt: 18 Oca 2005 05:45
Konum: Dünyadan

teşekkür ederim

Mesaj gönderen pro_imaj »

teşekkür ederim belirttiğiniz şekilde yaptım.
kolay gelsin
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
Cevapla