Visual Basic - Basic - PicBasic ve Türevleri
Visual Basic Database Arama Yaptırtmak ?
Visual Basic Database Arama Yaptırtmak ?
-
Visual basic acces arama kodu lazım. mesela 3 adet textbox olacak access de de 3 tane tablo olacak 1. si urun 2.si fiyat 3.sü barkod.
Arama butonu 3. textbox'a girilecek olan borkodu databasede aratacak.
bulup 1.ve 2. textboxlara fiyatını gösterecek
Kodlamada arama bölümünü halledemediğim için sizlerden yardım istiyorum.
-
aşağıdaki kodlara bir adet daha command eklenecek Text3 de yazılanı aramada kullanılacak database de bulup diğerlerini dolduracak
örn: ismi || fiyat || barkod
armut || 1600 || 16454816
Text1 || Text2 || Text3
text3 e yazacam barkodu : "16454816" diyelim
Text2' de fiyatı gözükecek: "1600"
Text1'de de adı: "armut"
tablo yukarıdaki gibi olcak
Dim CON As New ADODB.Connection
Dim Kayitlar As New ADODB.Recordset
Dim rs As New ADODB.Recordset
Private Sub Command1_Click()
On Error Resume Next
Kayitlar.MoveNext
If Kayitlar.EOF Or Kayitlar.BOF Then
Kayitlar.MovePrevious
Text1.Text = Kayitlar.Fields("ismi")
Text2.Text = Kayitlar.Fields("fiyat")
Text3.Text = Kayitlar.Fields("barkod")
Else
Text1.Text = Kayitlar.Fields("ismi")
Text2.Text = Kayitlar.Fields("fiyat")
Text3.Text = Kayitlar.Fields("barkod")
End If
Timer1.Enabled = False
Timer1.Enabled = True
End Sub
Private Sub Command2_Click()
On Error Resume Next
Kayitlar.MovePrevious
If Kayitlar.EOF Or Kayitlar.BOF Then
Kayitlar.MoveNext
Text1.Text = Kayitlar.Fields("ismi")
Text2.Text = Kayitlar.Fields("fiyat")
Text3.Text = Kayitlar.Fields("barkod")
Else
Text1.Text = Kayitlar.Fields("ismi")
Text2.Text = Kayitlar.Fields("fiyat")
Text3.Text = Kayitlar.Fields("barkod")
End If
End Sub
Private Sub Command3_Click()
On Error Resume Next
Kayitlar.MoveFirst
Text1.Text = Kayitlar.Fields("ismi")
Text2.Text = Kayitlar.Fields("fiyat")
Text3.Text = Kayitlar.Fields("barkod")
End Sub
Private Sub Command4_Click()
On Error Resume Next
Kayitlar.MoveLast
Text1.Text = Kayitlar.Fields("ismi")
Text2.Text = Kayitlar.Fields("fiyat")
Text3.Text = Kayitlar.Fields("barkod")
End Sub
Private Sub Command6_Click()
Kayitlar.AddNew
Kayitlar.Fields("ismi") = Text1.Text
Kayitlar.Fields("fiyat") = Text2.Text
Kayitlar.Fields("barkod") = Text3.Text
Kayitlar.AddNew
End Sub
Private Sub Command7_Click()
Kayitlar.Delete
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Kayitlar.Update
End Sub
Private Sub Command8_Click()
On Error Resume Next
Kayitlar.Fields("ismi") = Text1.Text
Kayitlar.Fields("fiyat") = Text2.Text
Kayitlar.Fields("barkod") = Text3.Text
Kayitlar.Update
End Sub
Private Sub Form_Load()
On Error Resume Next
CON.Open "Provider=Microsoft.jet.oledb.4.0; Data Source=" & App.Path & "\data.mdb"
Kayitlar.Open "Select * from data", CON, adOpenStatic, adLockOptimistic
Text1.Text = Kayitlar.Fields("ismi")
Text2.Text = Kayitlar.Fields("fiyat")
Text3.Text = Kayitlar.Fields("barkod")
End Sub -
rs.Open "select * from tablo_adi where sutun='" & Text3.Text & "';"
ya da
Set rs = db.OpenRecordset("Select * tabloismi Where sutun=" & sutun)
vbasic olmadıgı için deneyemiyorum öyle kafadan bi yazdım.
1.5 senedir falan vb6 kullanmadım aklıma geleni yazdım ynai yanlıs olabilir -)
**
.net olarak,
listbox a çektigimizi varsayalım verileri..
sen textbox a giriyorsun barkod u ona textbox2.text diyelim.
o da sana o barkod da yazılı olan tüm verileri sıralıyor basitçe anlatmaya calısırsam,
Dim Snc As Integer
Snc = ListBox1.FindString(TextBox3.Text)
ListBox1.SelectedIndex = Snc***
asp için de vereyim belki fikir verir sana.
<%
adi=request.form("adi")
dim conn,rst
Response.Buffer=true
set conn = Server.CreateObject("ADODB.Connection")
set rst = Server.CreateObject("ADODB.RecordSet")
conn.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("db/vt.mdb")
sql = "SELECT * from detay WHERE adi='"&TRIM(adi)&"'"
rst.open sql,conn,3,3
if rst.eof=true then
response.redirect ("404.asp")
end if
%>
<%=rst("adi")%> -
Nurky bunu yazdı:
-----------------------------
rs.Open "select * from tablo_adi where sutun='" & Text3.Text & "';"
ya da
Set rs = db.OpenRecordset("Select * tabloismi Where sutun=" & sutun)
vbasic olmadıgı için deneyemiyorum öyle kafadan bi yazdım.
-----------------------------Cıx hocam bu arama yapmaz. Direk veri çağırır. Arama yapmak için like içeren sorgu kullanacaksın.
-
wking bunu yazdı:
-----------------------------
Nurky bunu yazdı:
-----------------------------
rs.Open "select * from tablo_adi where sutun='" & Text3.Text & "';"
ya da
Set rs = db.OpenRecordset("Select * tabloismi Where sutun=" & sutun)
vbasic olmadıgı için deneyemiyorum öyle kafadan bi yazdım.
-----------------------------Cıx hocam bu arama yapmaz. Direk veri çağırır. Arama yapmak için like içeren sorgu kullanacaksın.
-----------------------------nasıl?
-
aksata bunu yazdı:
-----------------------------
wking bunu yazdı:
-----------------------------
Nurky bunu yazdı:
-----------------------------
rs.Open "select * from tablo_adi where sutun='" & Text3.Text & "';"
ya da
Set rs = db.OpenRecordset("Select * tabloismi Where sutun=" & sutun)
vbasic olmadıgı için deneyemiyorum öyle kafadan bi yazdım.
-----------------------------Cıx hocam bu arama yapmaz. Direk veri çağırır. Arama yapmak için like içeren sorgu kullanacaksın.
-----------------------------nasıl?
-----------------------------select * from tahribat where kullanici_adi LIKE 'Holy%'
Holy ile başlayan kullanıcıları getirir.
select * from tahribat where kullanici_adi LIKE '%Holy'
Holy ile biten kullanıcıları getirir.
-
wking bunu yazdı:
-----------------------------
Nurky bunu yazdı:
-----------------------------
rs.Open "select * from tablo_adi where sutun='" & Text3.Text & "';"
ya da
Set rs = db.OpenRecordset("Select * tabloismi Where sutun=" & sutun)
vbasic olmadıgı için deneyemiyorum öyle kafadan bi yazdım.
-----------------------------Cıx hocam bu arama yapmaz. Direk veri çağırır. Arama yapmak için like içeren sorgu kullanacaksın.
-----------------------------like içermesine gerek yok
where den sonra girilen veriyle db de kiyle karşılaştırman yeter
like kullanılmadıgında birebir aynı olmalı
-
The_FCN bunu yazdı:
-----------------------------
wking bunu yazdı:
-----------------------------
Nurky bunu yazdı:
-----------------------------
rs.Open "select * from tablo_adi where sutun='" & Text3.Text & "';"
ya da
Set rs = db.OpenRecordset("Select * tabloismi Where sutun=" & sutun)
vbasic olmadıgı için deneyemiyorum öyle kafadan bi yazdım.
-----------------------------Cıx hocam bu arama yapmaz. Direk veri çağırır. Arama yapmak için like içeren sorgu kullanacaksın.
-----------------------------like içermesine gerek yok
where den sonra girilen veriyle db de kiyle karşılaştırman yeter
like ın amacı aranmak istenen kelimelerin arancak yerdeki kelimenin ya kendisinin olması yada içinde geçmesini aramak için
pek anlatamamdım ama örnek vermek gerekirse at kelimesi arancak db de at,essek,ve atlet var arama yapıldıgında at ve atleti çeker
like kullanılmadıgında birebir aynı olmalı
-----------------------------Aynı şeyi söylüyoruz zaten.
-
up!
-
wking bunu yazdı:
-----------------------------
Nurky bunu yazdı:
-----------------------------
rs.Open "select * from tablo_adi where sutun='" & Text3.Text & "';"
ya da
Set rs = db.OpenRecordset("Select * tabloismi Where sutun=" & sutun)
vbasic olmadıgı için deneyemiyorum öyle kafadan bi yazdım.
-----------------------------Cıx hocam bu arama yapmaz. Direk veri çağırır. Arama yapmak için like içeren sorgu kullanacaksın.
-----------------------------Arama butonu 3. textbox'a girilecek olan borkodu databasede aratacak.
sen olsan böyle bi sistem için LIKE mı kullanırdın yoksa direk Where deyip tam karşılığı olan verileri mi getirirdin? :D
parçanın bütününe bak. barkod numarası text3.text olan ürünler gelmeli. bu database'de başı holy kıçı holy olan verileri getirmek değil :) -
kodlamalarıda verdim. Yardım edebilecek yok mu ?