Konu Araçları | Konu Seçenekleri | Gösterim Stili
Tarih
28/06/2019 21:25
Konu Sahibi
10pele10
Yorumlar
18
Okunma
670
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
10pele10

10pele10

Üye
65366
 Belirtilmemiş
 2
 12
 13/07/2014
0
 İstanbul
 
 Ofis 2000
 04/08/2019,15:13
Çözüldü 
Merhaba,
Ekte ki resimdede açıklamaya çalıştığım gibi Ad ve As diye iki sütun var.As değerinin 0 ve 1 olmasına göre Ad sütunu aynı kalıyor veya 1 artıyor.Bunu sadece query kullanarak yapma şansı var mıdır(Kod yazmayı bilmediğim için sadece query ile yapmak istiyorum,hazır kod yollasanız bile nasıl çalıştırılacağını da bilmediğimden deediğim gibi query ile çözüm rica ediyorum)

Bu sanki Autonumber gibi ama dediğim gibi As değerinin 0 ve 1 olmasına göre Ad sütunu aynı kalıyor veya 1 artıyor   




berduş

berduş

Uzman
65596
ha....
 29
 1.411
 30/07/2014
218
 -
 
 Ofis 2019 64 Bit
resim eklenmemiş kontrol eder misiniz?
soruda belirtilmemiş ama başlıkta "auto number/otomatik sayı " olduğu vurgulanmış, bildiğim kadarıyla otomatik alanlar -yapısını değiştirmediğiniz sürece- değişmez, artırıp azaltamaz başka bir değer atayamazsınız. ama eğer "Ad" alanı otomatik sayı değilse sorguyla olur, ama sorun şu bu sorgu kaç defa çalışacak ve çalıştırıldığında "AS" sütunundaki değer 0'dan 1'e çevrilecek mi yoksa aynı mı kalacak?
eğer aynı kalacaksa ve sorgu da birden fazla çalıştırılacaksa her defasında AS=1 için AD=AD+1 olacak mı? genel olarak güncelleme sorgusunun kodu aşağıdaki gibidir.
dilerim işinize yarar.
not : As ve Ad alanlarının sayısal veri olduğu varsayılmıştır.

Visual Basic Code
UPDATE [tabloAdi] SET [Ad] = [Ad]+1 where [As]=0;



...........
10pele10

10pele10

Üye
65366
 Belirtilmemiş
 2
 12
 13/07/2014
0
 İstanbul
 
 Ofis 2000
 04/08/2019,15:13
Merhaba,Ekte olan Excel dosyası ile olayı açıklamaya çalıştım
Dediğim gibi kod yazmayı bilmiyorum ne yapıyorsam Make Table query,Append query,Delete query,Select query ile yapabiliyorum.
Bunu bu şekilde nasıl yapabilirim bu konuda yardım rica ediyorum.



berduş

berduş

Uzman
65596
ha....
 29
 1.411
 30/07/2014
218
 -
 
 Ofis 2019 64 Bit
sayın @10pele10
öncelikle tekrar belirteyim otomatik sayı alanlarının değerini -tablonun yapısını değiştirmeden- değiştiremezsiniz. en azından ben öyle biliyorum o nedenle "as2" diye bir alan tanımladım işlemi onun üzerinden gerçekleştirdim.
1 - maalesef sadece sorguya dayalı yapamadım o nedenle kodla yaptım
2 - örnek vtniz olmadığı için kendimce bir tane oluşturdum kendi tablonuza uyarlarsınız




...........
10pele10

10pele10

Üye
65366
 Belirtilmemiş
 2
 12
 13/07/2014
0
 İstanbul
 
 Ofis 2000
 04/08/2019,15:13
(29/06/2019 22:25)halily Adlı Kullanıcıdan Alıntı: sayın @10pele10
öncelikle tekrar belirteyim otomatik sayı alanlarının değerini -tablonun yapısını değiştirmeden- değiştiremezsiniz. en azından ben öyle biliyorum o nedenle "as2" diye bir alan tanımladım işlemi onun üzerinden gerçekleştirdim.
1 - maalesef sadece sorguya dayalı yapamadım o nedenle kodla yaptım
2 - örnek vtniz olmadığı için kendimce bir tane oluşturdum kendi tablonuza uyarlarsınız
Halil bey,
Merhaba.Öncelikle bana yardım ettiğiniz için teşekkür ediyorum.
Ben office 2000 kullanıyorum dolayısı ile benim Access versiyonum 2000.Biraz demode kaldım herhaldeImg-grin))
Ekte benim deneme db var.Sizin yolladığınızı benimkine adapte etmeye çalıştım ama olmadı.Ekteki resimdeki hatayı veriyor,sorun nerede acaba?Ekte ki db de tablo ve form var ama formda ki hatadan dolayı zannediyorum açılırken hata veriyor
Yardımlarınız için tekrar teşekkür ediyorum
Selamlar



berduş

berduş

Uzman
65596
ha....
 29
 1.411
 30/07/2014
218
 -
 
 Ofis 2019 64 Bit
maalesef gönderdiğiniz form bende açılmadı ama -yanılmıyorsam- sorun eski Access sürümlerinde "ADO" nun olmamasından kaynaklanıyor.
kodu değiştirdim dilerim sorunsuz çalışır
referanslardan "Microsoft DAO 3.x Object Library" etkinleştirmelisiniz buradaki 3.x ofis sürümüne göre değişebilir

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Private Sub BtnGuncelle_Click()
'referans eklemeniz gerekebilir "Microsoft DAO 3.x Object Library" referansını eklemelisiniz
Tbas = Now
Dim rS As Recordset '<== burada hata verirse  ==> Dim rS As DAO.Recordset de olabilir <== olarak değiştirin
Dim sOrGu, SqlGuncelle As String
Dim x As Long

sOrGu = "select * from tbltablo order by sno"
Set rS = CurrentDb.OpenRecordset(sOrGu)
         If rS.RecordCount = 0 Then GoTo 10
rS.MoveLast
rS.MoveFirst
x = 0
Do Until rS.EOF
    x = x + IIf(DLookup("as", "tbltablo", "sno=" & rS.Fields("sno")) = Nz(DLookup("as", "tbltablo", "sno=" & rS.Fields("sno") - 1)), 0, 1)
    SqlGuncelle = "UPDATE TblTablo SET TblTablo.as2 =" & x & " where sno=" & rS.Fields(0)
    CurrentDb.Execute SqlGuncelle
    rS.MoveNext
Loop
10
'süre hesapla_______________________________________
Tbit = Now
Sure = DateDiff("s", Tbas, Tbit)
tSny = Sure Mod 60
tDk = Sure \ 60
MsgBox ("İşlem " & tDk & " dakika :" & tSny & " saniyede bitti")
'süre hesapla_______________________________________Bitti
End Sub



...........

Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Çözüldü System Dns Veya File Dsn Vba Bağlantısı cozum 2 188 04/07/2019, 13:11
Son Yorum: cozum
Çözüldü Network Veya Odbc Bağlantı Kontrolu Yapıldıktan Sonra Form Açılsın. cozum 3 422 01/07/2019, 17:23
Son Yorum: cozum
Çözüldü 4 Basamaklı artan sayı veya rastgele birbirinden farksız 4 basamaklı sayı oluşturma metbal 9 2.912 22/06/2019, 14:25
Son Yorum: leecooper2
Çözüldü İki Liste Kutusundan Aynı Tablo Üzerinde Güncelleme Yapmak Yunus Bozkurt 14 686 10/06/2019, 16:31
Son Yorum: Yunus Bozkurt
Çözüldü Sorgu'da Aynı İsimleri Teke Düşürme haziran4 2 260 07/05/2019, 16:58
Son Yorum: haziran4

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2019 MyBB Group.