منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] أرجو المساعدة سؤال بسيط - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (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=41698)



أرجو المساعدة سؤال بسيط - dr.programming - 10-06-22

السلام عليكم
أرجو المساعدة سؤال بسيط

كيف أتمكن من حذف أول ثلاث سجلات داخل جدول فى قاعدة بيانات أكسيس (أول ثلاث سجلات فقط )
فالجدول به 50 سجل


RE: أرجو المساعدة سؤال بسيط - Ahmads - 10-06-22

استعلم عن ارقم id للاسطر الثلاث الاولى ب TOP
ثم قم بحذفهم ب WHERE

كود :
SELECT TOP 3 id FROM tb

كود :
DELETE FROM tb WHERE id=?



RE: أرجو المساعدة سؤال بسيط - أبو خالد الشكري - 10-06-22

ولكن قد تكون قاعدة البيانات لا بوجد بها حقل اسمه ID

* لذلك الأفضل أن يرفق الشخص السائل نسخة من قاعدة البيانات (فارغة) .
أو على الأقل يذكر أسماء الحقول .


RE: أرجو المساعدة سؤال بسيط - dr.programming - 10-06-22

الزملاء و الساتذة الفاضل
Ahmads
و
[b]أبو خالد الشكري[/b]
لكم خالص الشكر
فى البداية  قاعدة البيانات أكسيس بها حقل id مسلسل و مفتاح أساسى
و بها :
كود عميل
اسم عميل
قيمة مبيعات
تفاصيل بيع
و أرغب فى حذف أول 3 صفوف أو سجلات للعميل بكبسة زر واحد
فكيف أستدعى الـ ID الخاص بالسجلات الثلاثة دفعة واحدة و حذفهم بنفس الطريقة دفعة واحدة دون غيرهم
و هل يستخدم فى هذه الحالة loop معينة
أرجو افادتى و مساعدتى جزاكم الله خيرا
و لكم كل التقدير


RE: أرجو المساعدة سؤال بسيط - Ahmads - 10-06-22

ضع طريقتك بالكود في تنفيذ الاستعلام الاول الذي في مشاركتي السابقه لنكمل معا


RE: أرجو المساعدة سؤال بسيط - dr.programming - 10-06-22

(10-06-22, 07:23 PM)Ahmads كتب : ضع طريقتك بالكود في تنفيذ الاستعلام الاول الذي في مشاركتي السابقه لنكمل معا

شكرا لك أستاذ  Ahmads  لكن للأسف أنا منذ أمس و محتار جدا فى الموضوع و ليس لدى حتى الان فكرة أو طريقة أو كود نفذتها
أنا محتاج مشاركتكم لتنير لى الطريق


RE: أرجو المساعدة سؤال بسيط - أبو خالد الشكري - 10-06-22

أخي Dr. Progamming يفضل أن ترفق نسخة من قاعدة البيانات .. حتى لو كانت  فارغة .
وسنحاول مساعدتك أنا أو الأخ   Ahmads


RE: أرجو المساعدة سؤال بسيط - سعود - 10-06-22

PHP كود :
Public Class Form1
    Dim dbpath 
As String IO.Path.GetDirectoryName(Application.ExecutablePath) & "\db.accdb"
 
   Dim str As String "provider=microsoft.ace.oledb.12.0;data source=" dbpath
    Dim con 
As New OleDb.OleDbConnection(str)
 
   Dim dt As New DataTable
    Dim da 
As New OleDb.OleDbDataAdapter("select * from tb"con)
 
   Dim cm As New OleDb.OleDbCommandBuilder(da)
 
   Private Sub gd()
 
       dt.Clear()
 
       Me.DataGridView1.DataSource Nothing
        Me
.DataGridView1.Rows.Clear()
 
       da.Fill(dt)
 
       Me.DataGridView1.DataSource dt
    End Sub
    Private Sub Form1_Load
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        gd
()
 
   End Sub
    Private Sub aad
(ByVal tn As String)
 
       Dim row As DataRow dt.NewRow
        row
(1) = tn
        dt
.Rows.Add(row)
 
       da.Update(dt)
 
       gd()
 
   End Sub
    Private Sub ddel
(ByVal count As Integer)
 
       Dim i As Integer
        i 
0
        Do Until i 
= (count 1)
 
           dt.Rows(i).Delete()
 
           i += 1
            da
.Update(dt)
 
       Loop
        gd
()
 
   End Sub
    Private 
Function found(ByVal tn As String) As Boolean
        If dt
.Select("tname='" tn "'").Count 0 Then
            Return False
        Else
            Return True
        End 
If
 
   End Function
 
   Private Sub btnadd_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles btnadd.Click
        Dim a 
As String InputBox("write some name to save.")
 
       If Trim(a.Trim).Trim "" Then Exit Sub
        If found
(a) = False Then
            aad
(a)
 
       Else
            MsgBox
("Name Exist!"MsgBoxStyle.Information"")
 
       End If
 
   End Sub

    Private Sub btndel_Click
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles btndel.Click
        If dt
.Rows.Count 0 Then Exit Sub
        If Trim
(txtcount.Text).Trim "" Then Exit Sub
        ddel
(Val(txtcount.Text))
 
       gd()
 
   End Sub
End 
Class 



RE: أرجو المساعدة سؤال بسيط - أبو خالد الشكري - 10-06-22

خلاص إذا حضر الماء بطل التيمم ?
لما يجاوب الأستاذ سعود فيعتبر رده نهائيا  لا رجعة فيه .
الله يحفظك ويجعلك ذخراً لنا .


RE: أرجو المساعدة سؤال بسيط - سعود - 10-06-22

(10-06-22, 11:23 PM)أبو خالد الشكري كتب : خلاص إذا حضر الماء بطل التيمم ?
لما يجاوب الأستاذ سعود فيعتبر رده نهائيا  لا رجعة فيه .
الله يحفظك ويجعلك ذخراً لنا .

من بعدكم جميعا اخواني الكرام .
والله يحفظكم جميعا.

افضل كود سريع للحذف هو التالي:
PHP كود :
Private Sub ddel(ByVal count As Integer)
 
       Using cmd As New OleDb.OleDbCommand("delete from tb where tid in (select top " count " tid from tb)"con)
 
           If con.State ConnectionState.Closed Then con.Open()
 
           Try
                cmd
.ExecuteNonQuery()
 
           Catch ex As Exception
                MsgBox
(Err.DescriptionMsgBoxStyle.Critical"")
 
           End Try
 
           If con.State ConnectionState.Open Then con.Close()
 
       End Using
        gd
()
 
   End Sub