منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : هل الكود هذا صحيح
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم ورحمة الله 

من يومين احاول وابحث عن حل لكود  التحديث وموب ضابط معاي

الكود 

كود :
 Dim con As New SQLiteConnection("Data Source=tables.s3db")

           Dim cmdi As New SQLiteCommand(" SELECT COUNT(*) FROM table WHERE name = @name  and   Date = @Date  and  time = @time", con)
           cmdi.Parameters.AddWithValue("@name", DataGridView1.Rows(i).Cells(1).Value)
           cmdi.Parameters.AddWithValue("@Date", DataGridView1.Rows(i).Cells(2).Value)
           cmdi.Parameters.AddWithValue("@time", DataGridView1.Rows(i).Cells(3).Value)


           con.Open()
           If cmdi.ExecuteScalar = 0 Then

               Dim rcvd As String = String.Empty
               rcvd = "Y"
           
               Dim cmd As New SQLiteCommand("UPDATE table SET trcvd=@trcvd WHERE name=@name AND Date=@Date AND time=@time", con)
               cmd.Parameters.AddWithValue("@trcvd", rcvd)
               cmd.Parameters.AddWithValue("@name", DataGridView1.Rows(i).Cells(1).Value)
               cmd.Parameters.AddWithValue("@Date", DataGridView1.Rows(i).Cells(2).Value)
               cmd.Parameters.AddWithValue("@time", DataGridView1.Rows(i).Cells(3).Value)
               cmd.ExecuteNonQuery()
               con.Close()


           Else
              MsgBox("No Records Found")
           End If


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

كود :
name  -       Date    -  time  -  trcvd

Ahmed  -  11/05/2016  -  11:02  -  N

Ahmed  -  20/03/2016  -  12:12  -  N

Ahmed  -  30/09/2016  -  01:09  -  N

Ahmed  -  15/11/2016  -  06:55  -  N



الكود يبحث في القاعده عن اسم احمد بتاريخ  ووقت معين  واذا حصله

كود :
 Dim con As New SQLiteConnection("Data Source=tables.s3db")

           Dim cmdi As New SQLiteCommand(" SELECT COUNT(*) FROM table WHERE name = @name  and   Date = @Date  and  time = @time", con)
           cmdi.Parameters.AddWithValue("@name", DataGridView1.Rows(i).Cells(1).Value)
           cmdi.Parameters.AddWithValue("@Date", DataGridView1.Rows(i).Cells(2).Value)
           cmdi.Parameters.AddWithValue("@time", DataGridView1.Rows(i).Cells(3).Value)


           con.Open()
           If cmdi.ExecuteScalar = 0 Then


يقوم بتحديث نفس السطر اللذي حصله ليقوم بتغيير  
كود :
@trcvd


من حرف N    الى حرف  Y
كود :
               Dim rcvd As String = String.Empty
               rcvd = "Y"
           
               Dim cmd As New SQLiteCommand("UPDATE table SET trcvd=@trcvd WHERE name=@name AND Date=@Date AND time=@time", con)
               cmd.Parameters.AddWithValue("@trcvd", rcvd)
               cmd.Parameters.AddWithValue("@name", DataGridView1.Rows(i).Cells(1).Value)
               cmd.Parameters.AddWithValue("@Date", DataGridView1.Rows(i).Cells(2).Value)
               cmd.Parameters.AddWithValue("@time", DataGridView1.Rows(i).Cells(3).Value)
               cmd.ExecuteNonQuery()
               con.Close()



اتمنى يكون الشرحح مفهوم بارك الله فيكم

اتعبني الكود من يومين 

وشكرا
السلام عليكم

استخدم الاستدلال على السطر المراد تحديثة بالعمود ID ترقيم تلقائي فقط
(31-12-16, 07:13 PM)مساعدة كتب : [ -> ]السلام عليكم

استخدم الاستدلال على السطر المراد تحديثة بالعمود ID ترقيم تلقائي فقط

شكرا لك

بس ممكن توضيح اكثر بارك الله فيك
في التحديث والحذف يكون مثل هذا الكود
كود :
UPDATE table SET trcvd=@trcvd WHERE id=@id

كود :
DELETE FROM table WHERE id=@id

هل يوجد في الجدول عمود ترقيم تلقائي اسمه ID؟
(31-12-16, 09:13 PM)مساعدة كتب : [ -> ]في التحديث والحذف يكون مثل هذا الكود
كود :
UPDATE table SET trcvd=@trcvd WHERE id=@id

كود :
DELETE FROM table WHERE id=@id

هل يوجد في الجدول عمود ترقيم تلقائي اسمه ID؟

نعم يوجد

كود :
id  -  name  -       Date    -  time  -  trcvd

1  - Ahmed  -  11/05/2016  -  11:02  -  N

2  - Ahmed  -  20/03/2016  -  12:12  -  N

3  - Ahmed  -  30/09/2016  -  01:09  -  N

4  - Ahmed  -  15/11/2016  -  06:55  -  N


راح اجرب موضوع ال id
استفسار 

الان بعد 

التاكد من وجود الشخص

المطلوب في البحث

كود :
Dim con As New SQLiteConnection("Data Source=tables.s3db")

          Dim cmdi As New SQLiteCommand(" SELECT COUNT(*) FROM table WHERE name = @name  and   Date = @Date  and  time = @time", con)
          cmdi.Parameters.AddWithValue("@name", DataGridView1.Rows(i).Cells(1).Value)
          cmdi.Parameters.AddWithValue("@Date", DataGridView1.Rows(i).Cells(2).Value)
          cmdi.Parameters.AddWithValue("@time", DataGridView1.Rows(i).Cells(3).Value)


          con.Open()
          If cmdi.ExecuteScalar = 0 Then


كيف ممكن احدد ال ID   الخاص به علشان اقوم بالتحديث

كود :
Dim rcvd As String = String.Empty
              rcvd = "Y"
         
              Dim cmd As New SQLiteCommand("UPDATE table SET trcvd=@trcvd WHERE id=@id ", con)
              cmd.Parameters.AddWithValue("@trcvd", rcvd)
              cmd.Parameters.AddWithValue("@id", ????)

              cmd.ExecuteNonQuery()
              con.Close()


وشكرا من جديد
تفضل الكود
كود :
Dim con As New SQLiteConnection("Data Source=tables.s3db")

Dim cmdi As New SQLiteCommand(" SELECT id FROM table WHERE name = @name  and   Date = @Date  and  time = @time", con)
cmdi.Parameters.AddWithValue("@name", DataGridView1.Rows(i).Cells(1).Value)
cmdi.Parameters.AddWithValue("@Date", DataGridView1.Rows(i).Cells(2).Value)
cmdi.Parameters.AddWithValue("@time", DataGridView1.Rows(i).Cells(3).Value)

con.Open()
Dim id As Integer = cmdi.ExecuteScalar

If id = 0 Then
(01-01-17, 01:54 AM)مساعدة كتب : [ -> ]تفضل الكود
كود :
Dim con As New SQLiteConnection("Data Source=tables.s3db")

Dim cmdi As New SQLiteCommand(" SELECT id FROM table WHERE name = @name  and   Date = @Date  and  time = @time", con)
cmdi.Parameters.AddWithValue("@name", DataGridView1.Rows(i).Cells(1).Value)
cmdi.Parameters.AddWithValue("@Date", DataGridView1.Rows(i).Cells(2).Value)
cmdi.Parameters.AddWithValue("@time", DataGridView1.Rows(i).Cells(3).Value)

con.Open()
Dim id As Integer = cmdi.ExecuteScalar

If id = 0 Then

شكرا على الرد

جربت الكود  وجربت اشوف الناتج  في
 MsgBox(id)

ويطلع لي  الرقم صفر
[attachment=12714]

يعني ما يقراء رقم ال id
هذا يعني أنه لم يجد بيانات مطابقة لما تبحث عنه

هل لابد من البحث بالثلاث بيانات name وDate وtime ؟

جرب أن تكتفي البحث بالاسم name فقط!
(01-01-17, 02:29 AM)مساعدة كتب : [ -> ]هذا يعني أنه لم يجد بيانات مطابقة لما تبحث عنه

هل لابد من البحث بالثلاث بيانات name وDate وtime ؟

جرب أن تكتفي البحث بالاسم name فقط!

عرفت المشكله 

وهيه ان ما يقراء التاريخ

يعني

name  وtime 

يشوفهم ويقارن بين الاثنين 

بس

وDate
ما يشوفه


والتاريخ نفس الشي
[attachment=12722]

كود :
           If DataGridView1.Rows(i).Cells(2).Value.ToString() = DataGridView2.Rows(io).Cells(2).Value.ToString() Then
               MsgBox("Yes")
           Else
               MsgBox("no")
           End If

التاريخ في Cells(2)

في DataGridView2  و  DataGridView1

بس غريبه ان ما يقراه

اما الاسم والوقت يقرئهم 

هل في طريقه اخرى او انا غلطان بشي 


وشكرا

(01-01-17, 04:53 PM)dubai.eig كتب : [ -> ]
(01-01-17, 02:29 AM)مساعدة كتب : [ -> ]هذا يعني أنه لم يجد بيانات مطابقة لما تبحث عنه

هل لابد من البحث بالثلاث بيانات name وDate وtime ؟

جرب أن تكتفي البحث بالاسم name فقط!

عرفت المشكله 

وهيه ان ما يقراء التاريخ

يعني

name  وtime 

يشوفهم ويقارن بين الاثنين 

بس

وDate
ما يشوفه


والتاريخ نفس الشي


كود :
           If DataGridView1.Rows(i).Cells(2).Value.ToString() = DataGridView2.Rows(io).Cells(2).Value.ToString() Then
               MsgBox("Yes")
           Else
               MsgBox("no")
           End If

التاريخ في Cells(2)

في DataGridView2  و  DataGridView1

بس غريبه ان ما يقراه

اما الاسم والوقت يقرئهم 

هل في طريقه اخرى او انا غلطان بشي 


وشكرا



علما بان يوم اجرب
كود :
MsgBox(DataGridView1.Rows(i).Cells(2).Value.ToString())

يقراء التاريخ
في DataGridView2  و  DataGridView1

 [attachment=12723]

غريبه المشكله
الصفحات : 1 2