TeknoSef
Üyeliği Durdurulmuş
Banlı Kullanıcı
-
Üyelik
16.11.2013
-
Yaş/Cinsiyet
39 / E
-
Meslek
Sistem ve Ağ Uzmanı
-
Konum
İstanbul Anadolu
-
Ad Soyad
Y** Y**
-
Mesajlar
78
-
Beğeniler
4 / 8
-
Ticaret
2, (%100)
Merhaba,
MSSQL de bir tabloda fatura numaralarını güncelle yapmam gerekiyor IDStr ye göre sorgulayarak fatura numaralarını fatura numarası alanına yazmak istiyorum ayrıca fatura kesildi alanı ise 0 dan 1 yapmak istiyorum nasıl bir sorgu yapmam gerekiyor destek olabilirseniz çok memnun olurum. Çok uğraştım başaramadım teşekkürler.
IDStr : Bu alanda 120 tane numara sorgu yaparak listeyi getirmek aşağıda ki alanları güncellemek
FaturaKesildi : 120 satır listelendiğinde bu alanda 0 sayısını 1 yapmam istiyorum
FaturaRefNo : 120 satır listelendiğinde elimde olan Excelde ki fatura numaralarını bu alana yazdırmam gerekiyor.
[B]FaturaKesilmeTarihi :[/B] Bu alan içinde sabit bir tarih vermem gerekiyor.
Desteğiniz için şimdiden teşekkürler.
İyi Çalışmalar.
-
Üyelik
10.11.2013
-
Yaş/Cinsiyet
27 / E
-
Meslek
Front-End Developer
-
Konum
Adana
-
Ad Soyad
S** D**
-
Mesajlar
1345
-
Beğeniler
234 / 472
-
Ticaret
12, (%100)
Pek anlamadım fakat hepsi bir tabloda ise sadece UPDATE sorgusu yazmanız yeterli.
UPDATE tabloadi SET FaturaKesildi = 1, FaturaRefNo = "FaturaNo", FaturaKesilmeTarihi = "Tarih" WHERE IDStr = "Sorgu";
sefacandemir.com.tr
-
Üyelik
10.11.2013
-
Yaş/Cinsiyet
27 / E
-
Meslek
Front-End Developer
-
Konum
Adana
-
Ad Soyad
S** D**
-
Mesajlar
1345
-
Beğeniler
234 / 472
-
Ticaret
12, (%100)
Anlamadım 120 kere tekrar etmesi mi gerekiyor ?
Peki bu 120 IDStr kodunuz nerede? Ve sadece Mssql üzerinden mi yapacaksınız yoksa her hangi bir program var mı?
sefacandemir.com.tr
-
Üyelik
10.11.2013
-
Yaş/Cinsiyet
27 / E
-
Meslek
Front-End Developer
-
Konum
Adana
-
Ad Soyad
S** D**
-
Mesajlar
1345
-
Beğeniler
234 / 472
-
Ticaret
12, (%100)
Bunun için bir basit programa ihtiyacınız olacak 120 sayısı çok büyük eğer tek tek elle girerim diyorsanız anlatayım sql den nasıl yapacağınızı fakat ufak bir C# projesiyle çözüme ulaşabilirsiniz:
Bir metin dosyasına bu numaraları her satıra biri gelecek şekilde yazın. | işareti ile ayırıp güncelleyeceğiniz verileride yanlarına yazın:
Örn:
Kod|FaturaNo
Kod|FaturaNo
Kod|FaturaNo
Kod|FaturaNo
Kod|FaturaNo
Ve C# ile MSSql veritabanınızı bağlayın.
Daha sonra iki list oluşturun;
List codes = new List();
List envId = new List();
Sonrasında StreamReader kullanarak metin dosyasına eklediğiniz kodları satır satır tarayıp listelere atıyoruz:
StreamReader sr= new StreamReader("C:\kodlarınbulundugudosya.txt"); // Metin dosyasının yolu..
while(!sr.EndOfStream){
string line = sr.ReadLine();
string[] _replace = line.Replace("|");
codes.Add(_replace[0]);
envId.Add(_replace[1]);
}
sr.Close();
sr.Dispose();
Son olarak bir for ile listedeki tüm elemanları yukarıda size verdiğim sorgu ile sorgulatın.
for(i=0; i< codes.Lenght; i++){
//Update sorgunuzu çalıştırın. WHERE IDStr kısmını codes[i]; olarak atayın. Güncelleyeceğiniz fatura numarasını da envId[i]; olarak atayın.
}
Böylece listedeki tüm kodları tek tek update edebilirsiniz.
Tek tek yapmak istiyorsanız bir önceki yazdığım sorguda IDStr = "Sorgu" yazan yeri tek tek kodlar ile değiştirmeniz gerekiyor.
Örn:
UPDATE tabloadi SET FaturaKesildi = 1, FaturaRefNo = "FaturaNo", FaturaKesilmeTarihi = "Tarih" WHERE IDStr = "HZO-00001496-001";
sefacandemir.com.tr
-
Üyelik
10.11.2013
-
Yaş/Cinsiyet
27 / E
-
Meslek
Front-End Developer
-
Konum
Adana
-
Ad Soyad
S** D**
-
Mesajlar
1345
-
Beğeniler
234 / 472
-
Ticaret
12, (%100)
" yerine ' kullanmayı dener misiniz. Sql derleyicilerinin ufak syntax değişimleri olabiliyor.
Mutlaka bir yolu vardır fakat MsSql kullanan birisi değilim. Dolayısıyla bilgim dahilinde yardımcı olmak istedim. :(
sefacandemir.com.tr
-
Üyelik
10.11.2013
-
Yaş/Cinsiyet
27 / E
-
Meslek
Front-End Developer
-
Konum
Adana
-
Ad Soyad
S** D**
-
Mesajlar
1345
-
Beğeniler
234 / 472
-
Ticaret
12, (%100)
Rica etsem sorguyu da gönderir misiniz? Aldığınız hatanın açıklaması biraz uzun fakat kısaca şöyle söyleyebilirim. Bir sql görünümünü güncelleyebilmeniz için belirli koşulların sağlanması gerekir. Bu koşullardan biri sağlanmadığında bu hatayı alırsınız.
Eğer sorgunuzu atarsanız sorunun sorgudan mı yoksa tablo yapısından mı kaynaklandığını söyleyebilirim.
sefacandemir.com.tr