اخوتي الكرام السلام عليكم ورحمة الله
ارجوا مساعدتي في استعلام عن اخر رقم من الحقل مثلا عندي حقل رقم الوظيفي الموظف
مثلا:_
الرقم الموظف
1235
6311
3164
6133
2616
6449
9791
6649
2594
3478
3164
البحث بنهاية الرقم ولكن مثلا الرقم 4 فيظهر نتيجة البحث
3164
2594
3164
تكون نيجة البحث
ارجو مساعدتي حتى بفكرة
والسلام عليكم ورجمة الله
UserID = حقل رقم الموظف
Table1 = اسم الجدول
TextBox1 = الرقم المراد البحث عنه
3 = بداية عملية البحث من الرقم الرابع لأن الرقم الأول يبدأ بصفر والرقم الثاني 1 وهكذا
1 = طول الرقم المراد البحث عنه
عدل ما يلزم ليتناسب مع تطبيقك .
كود :
SELECT *
FROM Table1
WHERE
substring(UserID,3,1) LIKE '%" & TextBox1.Text & "%'
حريف برمجة
جزاااك الله كل خير
جربت الطريقة لكن لم تنجح ولا اعرف السبب
رقم الموظف عندي يتكون من 10 خانات مثلا (5570000555)
اي من 0 الى 9 في برمجة الكود
ممكن التوضيح اكثر بارك الله فيك
اه حط 9 محل 4
UserID = حقل رقم الموظف
Table1 = اسم الجدول
TextBox1 = الرقم المراد البحث عنه
3 = بداية عملية البحث من الرقم الرابع لأن الرقم الأول يبدأ بصفر والرقم الثاني 1 وهكذا
1 = طول الرقم المراد البحث عنه
عدل ما يلزم ليتناسب مع تطبيقك
هاذا هو الشرح ارسل الكود الذي لديك لنرى ما الخطأ
الكود في الكلاس :_
----------------------------
Public Function testttttt(ByVal Full_Name As String) As DataTable
Dim CON As New Class1
Dim DT As New DataTable
DT.Clear()
DT = CON.SELECT_TXT(" SELECT * FROM dbo.P_Pension WHERE substring(PensionNo,9,1) LIKE '%" & Full_Name & "%'")
Return DT
End Function
-------------------------------------------------------------------------
كود البحث:_
--------------------------------
Sub ARD_d()
Dim DT As New DataTable
DT.Clear()
DT = Class1_.testttttt(TextBox2.Text)
dgv1.DataSource = DT
dgv1.DataSource = DT
dgv1.Columns(0).HeaderText = "الرقم"
dgv1.Columns(0).Width = "100"
End Sub
------------------------------------------------------
PHP كود :
Public Class Form1
Dim str As String = "provider=microsoft.ace.oledb.12.0;data source=" & CurDir() & "\db.accdb"
Dim dt As DataTable
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
ListBox1.Items.Clear()
Using con As New OleDb.OleDbConnection(str)
Using cm As New OleDb.OleDbCommand("", con)
cm.CommandText = "select * from tb"
If con.State = ConnectionState.Closed Then con.Open()
dt = New DataTable
dt.Load(cm.ExecuteReader)
If con.State = ConnectionState.Open Then con.Close()
End Using
End Using
For i As Integer = 0 To dt.Rows.Count - 1
Dim t As String = dt(i)(1).ToString
If Mid(t, Len(t), 1) = TextBox1.Text Then
ListBox1.Items.Add(t)
End If
Next
End Sub
End Class
(17-10-19, 02:42 AM)محمد بوقزاحة كتب : [ -> ]حريف برمجة
جزاااك الله كل خير
جربت الطريقة لكن لم تنجح ولا اعرف السبب
رقم الموظف عندي يتكون من 10 خانات مثلا (5570000555)
اي من 0 الى 9 في برمجة الكود
ممكن التوضيح اكثر بارك الله فيك
سبب وضعي لك رقم 3 لانك وضعت ارقام الموظفين من عدد 4 خانات ...
على العموم استبدل رقم 3 لتصبح 9
مرحباً اخى محمد بوقزاحة
لبساطة الامر وسهولة التعامل مع الامر
اذا كنت تستخدم قاعدة بيانات
Access فكل ما عليك جعل الاستعلام بهذا الشكل
كود :
SELECT * FROM test WHERE number LIKE '*" & TextBox1.Text &"'
ولاحظ * الموجوده وهى تشير اى كان الاحرف / الارقام الى قبل ما تم ادخاله فى TextBox1
واذا كنت تستخدم قاعدة بيانات
MsSQL فكل ما عليك جعل الاستعلام بهذا الشكل
كود :
SELECT * FROM TT1 WHERE number LIKE '%" & TextBox1.Text &"'
ولاحظ % الموجوده وهى تشير اى كان الاحرف / الارقام الى قبل ما تم ادخاله فى TextBox1
وهذا هو الاختلاف بين قاعدة بيانات Acces و Sql
تحياتى لك
وتمنياتى لك التوفيق
شكرا اخي الكريم
لقد قمت بتجريب عدد محاولات وللاسف لم تنجح
قاعدة البيانات SQL 2008 R2
المطلوب
جدول للموظفين
رقم الموظف اسم الموظف عنوان الموظف رقم هاتف الموظف ..... الخ
5550000556 محمد علي مصر 6161313131
5563131447 احمد محمد السعودية 64611111111
5642322333 خالد عبدالله العراق 4631311311
5355212477 محمود علي مصر 3164631613
4452326666 ماهر محمود السعودية 232631131
---------المطلوب -------
البحث باخر رقم مثلا :_ الرقم 7
فتكون نتيجة البحث هكدا
5563131447
5355212477
(17-10-19, 09:48 AM)حريف برمجة كتب : [ -> ] (17-10-19, 02:42 AM)محمد بوقزاحة كتب : [ -> ]حريف برمجة
جزاااك الله كل خير
جربت الطريقة لكن لم تنجح ولا اعرف السبب
رقم الموظف عندي يتكون من 10 خانات مثلا (5570000555)
اي من 0 الى 9 في برمجة الكود
ممكن التوضيح اكثر بارك الله فيك
سبب وضعي لك رقم 3 لانك وضعت ارقام الموظفين من عدد 4 خانات ...
على العموم استبدل رقم 3 لتصبح 9
قاعدة البيانات SQL2008R2
مرحباً اخى محمد بوقزاحة
ارجع لردي السابق وسيتم حل الامر بدون كتابة اكواد مكثفة لاتمام الامر
تحياتى لك
وتمنياتى لك التوفيق