الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية البحث في عدة حقول بسجل واحد

مغلق
بدأه haking33 في 21 أغسطس 2007 · 4 رد · 587 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم الأخوة الكرام والمبرمجين العمالقة :

عندي جدول به عدة حقول : الاسم الأول I الاسم الثاني I الاسم الثالث I الاسم الرابع

كيف ممكن أعمل كود بحث يبحث في هذه الأربع حقول مرة واحدة ويعطي نتيجة البحث بها مكان الاسم

أناحاليا استخدم هذا الكود المعقد :

if NamT.State = 1 then NamT.close
NamT.Open "Select * From Names",db,1,2 if NamT.EOF = True Then Exit Sub
'
'
NamT.MoveFirst
NamT.Find "Name1 = '" & Text1.Text & "' ", 0, adSearchForward
If NamT.EOF = True Then
Else
    Stup = 1
    GoTo ComplitRun
End If
NamT.MoveFirst
NamT.Find "Name2 = '" & Text1.Text  & "' ", 0, adSearchForward
If NamT.EOF = True Then
Else
    Stup = 2
    GoTo ComplitRun
End If
NamT.MoveFirst
NamT.Find "Name3 = '" & Text1.Text  & "' ", 0, adSearchForward
If NamT.EOF = True Then
Else
    Stup = 3
    GoTo ComplitRun
End If
NamT.MoveFirst
NamT.Find "Name4 = '" & Text1.Text  & "' ", 0, adSearchForward
If NamT.EOF = True Then
Else
    Stup = 4
    GoTo ComplitRun
End If

end if

Exit Sub


ComplitRun :

If Stup = 1 then
MsgBox " Name 1 " & Text1.Text

ElseIf Stup =2 then 
MsgBox "Name2" & Text1.Text

Elseif Stup = 3 then
Msgbox "Name3" & Text1.Text

Elseif Stup = 4 Then 
Msgbox "Name4" & Text1.Text

end if

هل هناك طريقة أسرع هذه معقدة بعض الشيء وبطيئة ؟؟

#2

الموضوع سهل ولا يحتاج كل هذا التعقيد

بس انت كيف الطريقه اللي تبي تبحث بها

يعني تبي تدخل اي اسم والبحث راح يطلع لك الاسم كامل

الاسم الاول والثاني والثالث

ويحطهم في تسكت

هل هذا المطلوب اذا كان هذا كود اسهل من اللي حطيته

Dim sql

dim n as new recordset

sql = "select * from op "

n.Open sql, db, adOpenDynamic, adLockOptimistic

Do While Not n.EOF

If n!Name1 = Text1.Text Or n!name2 = Text1.Text Then

Text1.Text = n!Name1 & n!name2 & "'" & n!name3

End If

n.MoveNext

Loop

#3

لا أخي الكريم أنا أريد فقط أن يخبرني البرنامج أن الإسم بـ Text1 الذي بحثت عنه هو موجود في الحقل الأول أو الثاني أو الثالث ..

فقط يخبرني الكود موقع الحقل الذي به القيمة التي أبحث عنها ....

شكرا على مجهودك

#4

انظر الى هذا الكود

Dim SQL As String
SQL = "Select name1,name2,name3,name4 From Names where name1='?' or name2='?' or name3='?'  or name4='?'"
SQL = Replace(SQL, "?", Text1)

 NamT.Open SQL, db, 1, 2

 If NamT.EOF = True Then Exit Sub


 Dim i As Integer
 For i = 0 To 3
 If NamT(i) = Text1 Then

 MsgBox " Name " & CStr(i + 1) & ": " & Text1.Text
 Exit Sub

 End If

 Next
#5

أخي طارق شكرا جزيلا لك وصلت فعلا إلى مبتغاي شكرا جزيلا

هذا الموضوع مغلق.

مواضيع مشابهة