منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
حل مشكلة الإستعلام مع وجود الفواصل أو العلامات - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : حل مشكلة الإستعلام مع وجود الفواصل أو العلامات (/showthread.php?tid=34184)

الصفحات: 1 2 3


RE: حل مشكلة الحفظ مع وجود الفواصل أو العلامات - سعود - 07-04-20

(07-04-20, 06:28 PM)ZaerAllail كتب :
(07-04-20, 05:52 PM)سعود كتب : فعلا جربتها وحدثت المشكلة .
لكن لماذا انت مصر(من الاصرار يعني لاتريد اي بديل؟) على تلك الطريقة؟

معاك حق هناك طرق كثير ناجحه 
ولكن أحيانا تمسك معاك وبقوه رغبه قوية لحل خطأ في كود معين فقط حتى تستمتع بالمعلومه في حد ذاتها !
صدقني فالفرق كبير يوم تنتصر على الخطأ وتصلحه وبين تهميشه وتجاهله والبحث عن طريق أخر !

عموما أعتذر إني أشغلتكم معاي وسيبقى البحث قائم عندي وفي حال وصلت لحل سأضعه هنا للفائده !

أخشى ان يقودك هذا الى مغادرة الدوت نتSmile
علامة التنصيص المفردة لها معنى على مااظن في البرمجة.
جرب وضع اخرى بعد حرف مثلا:
كود :
saud's'
اظن راح يحفظ مابين علامتي تنصيصSmile
المشكلة حذفت المشروع  قبل اجرب.


RE: حل مشكلة الحفظ مع وجود الفواصل أو العلامات - hashemb1978 - 07-04-20

اخي الكريم هادا كود البحث مع المرفق بلغني لو زبط اذا بدك تراسلني عالفيس راسلني علي هاد الرابط
https://www.facebook.com/profile.php?id=100000509588475
ضع هذا الكود في زر البحث

Dim myQuery As String = ""

                Dim sql As String = "select * from studenet where Class like '%" & TextBox1.Text & "%' "
                If con.State() Then con.Close()
                con.Open()
                Dim cmd As New OleDbCommand(sql, con)
                Dim dr As OleDbDataReader
                dr = cmd.ExecuteReader()
                If dr.Read() = True Then
في حال وجد السجل يضع بياناته في التكسات
                    TextBox2.Text = dr.Item(0).ToString
                    TextBox3.Text = dr.Item(1).ToString
                    TextBox4.Text = dr.Item(3).ToString
                    TextBox5.Text = dr.Item(2).ToString
                    Dim da = New OleDbDataAdapter(sql, con)
                    Dim dt As New DataTable
                    da.Fill(dt)
                    Me.DataGridView1.DataSource = dt
                    con.Close()

                Else
في حال لم يجد البيانات يفرغ التكسات                   
 con.Close()
                    TextBox1.Text = ""
                    tb1.Text = ""
                    tb2.Text = ""
                    Com3.Text = ""
                    TextBox2.Text = ""
                                      
                    MsgBox(" الصف غير موجود ", MsgBoxStyle.Information, "المكتبه")

                End If

اخي الكريم جرب هادا الكود


ضع هذا الكود في زر البحث

Dim myQuery As String = ""

                Dim sql As String = "select * from studenet where Class like '%" & TextBox1.Text & "%' "
                If con.State() Then con.Close()
                con.Open()
                Dim cmd As New OleDbCommand(sql, con)
                Dim dr As OleDbDataReader
                dr = cmd.ExecuteReader()
                If dr.Read() = True Then
في حال وجد السجل يضع بياناته في التكسات
                    TextBox2.Text = dr.Item(0).ToString
                    TextBox3.Text = dr.Item(1).ToString
                    TextBox4.Text = dr.Item(3).ToString
                    TextBox5.Text = dr.Item(2).ToString
                    Dim da = New OleDbDataAdapter(sql, con)
                    Dim dt As New DataTable
                    da.Fill(dt)
                    Me.DataGridView1.DataSource = dt
                    con.Close()

                Else
في حال لم يجد البيانات يفرغ التكسات                   
 con.Close()
                    TextBox1.Text = ""
                    tb1.Text = ""
                    tb2.Text = ""
                    Com3.Text = ""
                    TextBox2.Text = ""
                                      
                    MsgBox(" الصف غير موجود ", MsgBoxStyle.Information, "المكتبه")

                End If

مرفق الكود


RE: حل مشكلة الحفظ مع وجود الفواصل أو العلامات - ZaerAllail - 07-04-20

تم حل الخطأ بشكل بسيط جدا لا يخطر على أحد وهو فقط بإضافة أمر الإستبدال للكود الخاص بالإستعلام ليصبح كالتالي 


كود :
da = New SqlDataAdapter("select NameOfMov From MovTable where NameOfMov =  '" & Trim(NameSearchTB.Text).ToString().Replace("'", "''") & "'", sqlcon)

عموما شكرا للجميع !

(07-04-20, 06:52 PM)hashemb1978 كتب : اخي الكريم هادا كود البحث مع المرفق بلغني لو زبط اذا بدك تراسلني عالفيس راسلني علي هاد الرابط
https://www.facebook.com/profile.php?id=100000509588475
ضع هذا الكود في زر البحث

Dim myQuery As String = ""

                Dim sql As String = "select * from studenet where Class like '%" & TextBox1.Text & "%' "
                If con.State() Then con.Close()
                con.Open()
                Dim cmd As New OleDbCommand(sql, con)
                Dim dr As OleDbDataReader
                dr = cmd.ExecuteReader()
                If dr.Read() = True Then
في حال وجد السجل يضع بياناته في التكسات
                    TextBox2.Text = dr.Item(0).ToString
                    TextBox3.Text = dr.Item(1).ToString
                    TextBox4.Text = dr.Item(3).ToString
                    TextBox5.Text = dr.Item(2).ToString
                    Dim da = New OleDbDataAdapter(sql, con)
                    Dim dt As New DataTable
                    da.Fill(dt)
                    Me.DataGridView1.DataSource = dt
                    con.Close()

                Else
في حال لم يجد البيانات يفرغ التكسات                   
 con.Close()
                    TextBox1.Text = ""
                    tb1.Text = ""
                    tb2.Text = ""
                    Com3.Text = ""
                    TextBox2.Text = ""
                                      
                    MsgBox(" الصف غير موجود ", MsgBoxStyle.Information, "المكتبه")

                End If

اخي الكريم جرب هادا الكود


ضع هذا الكود في زر البحث

Dim myQuery As String = ""

                Dim sql As String = "select * from studenet where Class like '%" & TextBox1.Text & "%' "
                If con.State() Then con.Close()
                con.Open()
                Dim cmd As New OleDbCommand(sql, con)
                Dim dr As OleDbDataReader
                dr = cmd.ExecuteReader()
                If dr.Read() = True Then
في حال وجد السجل يضع بياناته في التكسات
                    TextBox2.Text = dr.Item(0).ToString
                    TextBox3.Text = dr.Item(1).ToString
                    TextBox4.Text = dr.Item(3).ToString
                    TextBox5.Text = dr.Item(2).ToString
                    Dim da = New OleDbDataAdapter(sql, con)
                    Dim dt As New DataTable
                    da.Fill(dt)
                    Me.DataGridView1.DataSource = dt
                    con.Close()

                Else
في حال لم يجد البيانات يفرغ التكسات                   
 con.Close()
                    TextBox1.Text = ""
                    tb1.Text = ""
                    tb2.Text = ""
                    Com3.Text = ""
                    TextBox2.Text = ""
                                      
                    MsgBox(" الصف غير موجود ", MsgBoxStyle.Information, "المكتبه")

                End If

مرفق الكود

الأخ هاشم شكرا لك ولكن لماذا لا تضع الجمل والأكواد في الأدوات الخاصة بها حتى تسهل قرائتها وفهمها بشكل أسرع 

عموما الجواب على هذا السؤال في المشاركه الأخيره


RE: حل مشكلة الحفظ مع وجود الفواصل أو العلامات - سعود - 07-04-20

(07-04-20, 08:11 PM)ZaerAllail كتب : تم حل الخطأ بشكل بسيط جدا لا يخطر على أحد وهو فقط بإضافة أمر الإستبدال للكود الخاص بالإستعلام ليصبح كالتالي 


كود :
da = New SqlDataAdapter("select NameOfMov From MovTable where NameOfMov =  '" & Trim(NameSearchTB.Text).ToString().Replace("'", "''") & "'", sqlcon)

عموما شكرا للجميع !

يعني استبدل العلامة الواحدة بعلامتين!
كيف تكون قرائتها مرة اخرى هل نفس ماتريد؟


RE: حل مشكلة الحفظ مع وجود الفواصل أو العلامات - ZaerAllail - 07-04-20

(07-04-20, 06:37 PM)سعود كتب :
(07-04-20, 06:28 PM)ZaerAllail كتب :
(07-04-20, 05:52 PM)سعود كتب : فعلا جربتها وحدثت المشكلة .
لكن لماذا انت مصر(من الاصرار يعني لاتريد اي بديل؟) على تلك الطريقة؟

معاك حق هناك طرق كثير ناجحه 
ولكن أحيانا تمسك معاك وبقوه رغبه قوية لحل خطأ في كود معين فقط حتى تستمتع بالمعلومه في حد ذاتها !
صدقني فالفرق كبير يوم تنتصر على الخطأ وتصلحه وبين تهميشه وتجاهله والبحث عن طريق أخر !

عموما أعتذر إني أشغلتكم معاي وسيبقى البحث قائم عندي وفي حال وصلت لحل سأضعه هنا للفائده !

أخشى ان يقودك هذا الى مغادرة الدوت نتSmile
علامة التنصيص المفردة لها معنى على مااظن في البرمجة.
جرب وضع اخرى بعد حرف مثلا:
كود :
saud's'
اظن راح يحفظ مابين علامتي تنصيصSmile
المشكلة حذفت المشروع  قبل اجرب.

لا خلاص أبشرك وجدت الحل ويسعدني إنك تعرفه 
والجميل في لغات البرمجه أن تستوعبها ولا تتجاهلها مهما كانت صعوبتها 
فالخطأ ربما يكون نقطه أو كلمه 

الحل في المشاركة الأخيره لي

(07-04-20, 08:15 PM)سعود كتب :
(07-04-20, 08:11 PM)ZaerAllail كتب : تم حل الخطأ بشكل بسيط جدا لا يخطر على أحد وهو فقط بإضافة أمر الإستبدال للكود الخاص بالإستعلام ليصبح كالتالي 


كود :
da = New SqlDataAdapter("select NameOfMov From MovTable where NameOfMov =  '" & Trim(NameSearchTB.Text).ToString().Replace("'", "''") & "'", sqlcon)

عموما شكرا للجميع !

يعني استبدل العلامة الواحدة بعلامتين!
كيف تكون قرائتها مرة اخرى هل نفس ماتريد؟

كما تعلم أخي الحبيب فعلامة التنصيص في لغات البرمجه عنصر أساسي ولها إستخدامات كثير فإذا دخلت في بياناتك 
فالنظام يحتاج منك أمر حتى يدرك أنها ليست العلامه الخاصة به ولكنها جزء من النص في التكست 
وأمر الإستبدال يقوم بهذا التوضيح للبرنامج 

وأمر الإستبدال يسري على جميع العناصر المستخدمه في لغات البرمجه مثل " , \ ' / وهكذا !