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

اسئلة حيرتني في ازرار الحفظ

بدأه فاضل الكعبي في 20 فبراير 2011 · 10 رد · 1,166 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم اساتذتي الاجلاء

لدي عدة اسئلة

1. عندي قاعدة تحوي ملايين من الاسماء وعملت كود التعديل لكن عند التنفيذ يتاخر كثيرا بدون جدوى وقد عملت ايضا كود التعديل بالبروسيدر ونفس الشئ وكود التعديل كما يلي

Dim sql As String = "select * from person where PER_ID =  " & Me.idtext.Text & " "
        Dim Adapter As New SqlDataAdapter(sql, conn)
        Myds.Clear()
        Adapter.Fill(Myds, "person")
        conn.Close()
        Dim MyPosition As Integer = Me.BindingContext(Myds, "person").Position()
        Dim PER_ID As String = Myds.Tables("person").Rows(MyPosition).Item("PER_ID")
        Myds.Tables("person").Rows(MyPosition).Item("PER_VRTYPE") = "CHANGE"
        Myds.Tables("person").Rows(MyPosition).Item("PER_FIRST") = Me.firsttext.Text()
        Myds.Tables("person").Rows(MyPosition).Item("PER_FATHER") = Me.lasttext.Text()
        Myds.Tables("person").Rows(MyPosition).Item("PER_GRAND") = Me.grantext.Text()
        Dim sqlInsert As String = "update person set PER_FIRST=@PER_FIRST,PER_VRTYPE = @PER_VRTYPE ,PER_FATHER=@PER_FATHER,PER_GRAND=@PER_GRAND where PER_ID=@PER_ID"
        Adapter.UpdateCommand = New SqlCommand(sqlInsert, conn)
        Adapter.UpdateCommand.Parameters.Clear()
        Adapter.UpdateCommand.Parameters.AddWithValue("@PER_ID", Me.idtext.Text)
        Adapter.UpdateCommand.Parameters.AddWithValue("@PER_VRTYPE", "CHANGE")
        Adapter.UpdateCommand.Parameters.AddWithValue("@PER_FIRST", Me.firsttext.Text)
        Adapter.UpdateCommand.Parameters.AddWithValue("@PER_FATHER", Me.lasttext.Text)
        Adapter.UpdateCommand.Parameters.AddWithValue("@PER_GRAND", Me.grantext.Text)
        Me.BindingContext(Myds, "person").EndCurrentEdit()
        Adapter.Update(Myds, "person")
        MsgBox("تم تحديث الناخب الحالي", MsgBoxStyle.Information)
    End Sub

2. عندي داتا كرد وعملت بجانب كل record زر حفظ لكن واجهتني مشكلة هي عند ترك خلية في الزر الذي اريد ان احفظه تظهر رسالة عدم الحفظ ولكن الكود يعمل في حالة ملاء جميع خلايا السجل والكود هو

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'Try
        For Each row As DataGridViewRow In DataGridView1.Rows
            If Not (row.Cells(0).Value Is Nothing) Then
                If row.Cells(0).Value = True Then
                    Dim emp _name As String = row.Cells(1).Value.ToString
                    Dim emp _fam As String = row.Cells(2).Value.ToString
                    Dim emp _idbi As String = row.Cells(3).Value.ToString                    
                    Dim sql As String = "select * from emp"
                    Dim Adapter As New SqlDataAdapter(sql, conn)
                    Myds.Clear()
                    Adapter.Fill(Myds, " emp ")
                    Dim dr As DataRow = Myds.Tables("emp ").NewRow
                    dr.Item("emp _name ") = emp _name
                    dr.Item("emp _fam ") = emp _fam.ToString()
                    dr.Item("emp _idbi ") = emp _idbi.ToString()                    
                    Myds.Tables("emp ").Rows.Add(dr)
                    Dim sqlInsert As String = "insert into emp (emp _name, emp _fam, emp _idbi)values (@ emp _name,@ emp _fam,@ emp _idbi)"
                    Dim Insert As New SqlCommand(sqlInsert, conn)
                    Insert.CommandType = CommandType.Text
                    Insert.Parameters.AddWithValue("@emp _name ", emp _name)
                    Insert.Parameters.AddWithValue("@emp _fam ", emp _fam)
                    Insert.Parameters.AddWithValue("@emp _idbi ", emp _idbi)                    
                    Adapter.InsertCommand = Insert
                    Me.BindingContext(Myds, " emp ").EndCurrentEdit()
                    Adapter.Update(Myds, " emp ")
                End If
            End If
        Next
        MsgBox("Save New Row In Database", MsgBoxStyle.Information)

وانا بامس الحاجة اليها جزاكم الله خيرا

#2

السلام عليكم

انا في الانتضار جزاكم الله خيرا

#3

السلام عليكم

ارجو الاجابة الى اسئلتي لاني بامس الحاجة اليها جزاكم الله خيرا

#4

بالنسبة للسؤال الأول قم بانشاء فهارس على الأعمدة التي تقوم بالاستعلام عليها او قم بحذف الفهارس القديمة إذا كان عددها كبير فالهارس سلاح ذو حدين يجب ان تجيد استخدامها .............. الفهرس يسرع عمليات البحث

أما السؤال الثاني : الصراحة أنا لست جيد في الفي بي ولكن قرأت الكود الخاص بك لم اجد فيه رسالة ليتم طباعتها ....؟؟؟؟ قم بوضع الرسالة .... ضمن الكود الخاص بك

قل لمن يحمل هما ****** إن همــــا لا يدوم
:rolleyes: :rolleyes: :clapping: :rolleyes: :rolleyes:

مثلا تفنى المسـرة ***** هكذا تفنى الهموم

#5

السلام عليكم

كيف اقوم بحذف الفهارس جزاك الله خيرا ولو اتعبك

#6

قم بفتح برنامج sql server واذهب لقاعدة البيانات الخاصة بك ......... افتح الجدول الذي تريد حذف الفهرس منه .... اسمها index .......... نقرة يمينية عليها وقم بحذفها .........

قل لمن يحمل هما ****** إن همــــا لا يدوم
:rolleyes: :rolleyes: :clapping: :rolleyes: :rolleyes:

مثلا تفنى المسـرة ***** هكذا تفنى الهموم

#7

السلام عليكم

جزاك الله خيرا ووظعه الله في ميزان حسناتك

ساجرب

#8

السلام عليكم

جزاك الله خيرا وانا في انتضار السؤال الثاني جزاك الله

#9

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

عندما نستخدم الباراميترات في المتحولات sqlcommand فيتوجب علينا ملئها بالقيم .......... انت في بداية الكود قم بالتعريف عن ثلاث متحولات وضع شرط IF إذا كان احد الحقول فارغا فزود المتحول السؤول عن مراقبته بقيمة ما ولتكن الجلة النصية التالية "لايوجد قيم للعرض" ......... وإذا كان الحقل المقابل غير فارغ فزود المتحول المسؤول عن مراقبته بقيمة الحقل ..........

وأثناء استخدامك للباراميترات قم بتمرير المتحولات التي قمت بتزيدها بالقيم ............

قل لمن يحمل هما ****** إن همــــا لا يدوم
:rolleyes: :rolleyes: :clapping: :rolleyes: :rolleyes:

مثلا تفنى المسـرة ***** هكذا تفنى الهموم

#10

السلام عليكم

ممكن مثال ولو بالكود لكي ابداء بالحل

#11

آسف عل التأخير إليك أخي مثال ................

ليكن لديك مثال عن تسجيل مستخدم جديد وفي قاعدة البيانات حقول اجبارية وغير اجبارية
insert into table (Cul1,Cul2,Cul3,Cul4) values(val1,val2,val3,val4)

الحقول Cul3 و Cul4 غير اجباري وتقبل null اما البقية فهي اجبارية .........

سيكون كود السي شارب الخاص بك :

حددت في البداية المتحولات التي ستمرر قيمها
string val1="no data";
if(textbox1.text !="")
{ val1 = textbox1.text}
string val2 = "no datat";
if(textbox2.text!=""){val2=textbox2.text}
string val3 ="no data";
if(textbox3.text!=""){val3=textbox3.text}
string val4 = "no data";
if(textbox4.text!=""){val4=textbox4.text}

conection to data base ........................
sqlcommand cmd = new sqlcommand("",con);
string sql ="insert into table (Cul1,Cul2,Cul3,Cul4) values(val1,val2,val3,val4)";
sqlcommand cmd = new sqlcommand(sql,con);

cmd.executeNonquiry();

قل لمن يحمل هما ****** إن همــــا لا يدوم
:rolleyes: :rolleyes: :clapping: :rolleyes: :rolleyes:

مثلا تفنى المسـرة ***** هكذا تفنى الهموم

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