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

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

عندي اكتر من جدول اريد ضم اعمدة معينة مع بعض في عمود واحد

يعني الجدول tb1   ,tb2  ,tb3

حقول الجدول الاول     tb1_id,tb1_type,tb1_mount,tb1_price

حقول الجدول الثاني     tb2_id,tb2_type,tb2_weight,tb2_price

حقول الجدول  الثالث    tb3_id,tb3_type,tb3_count,tb3_price

اريد وضع اعمدة بحيث تصبح عامود واحد بداتا جريد جديد فما هو الاستعلام

 اريد وضع عمود 1  tb1_type   اضع تجتة tb2_type   وتحتة   tb3_type

 اريد وضع عمود 2 tb1_price   اضع تجتة tb2_price   وتحتة tb3_price
انشاء اللّة

هعمل برنامج صغير وابعتة
المثال جاهز انشاء اللّة  بس استعجلت في كتابتة هو الاصناف غير كدة بس دة حاجة بسرعة
هرفقها كل اما اضغط المثال تختفي مع الضغط مش عارف في اية
اتفضل اخي 
جعل الاسماء او غير ذلك تحت بعض من جداول مختلفة

PHP كود :
SELECT TB1_TYPE FROM TB1 UNION SELECT TB2_TYPE FROM TB2 UNION SELECT TB3_TYPE FROM TB3 
SELECT tb1_id, tb1_type, tb1_mount, tb1_price
FROM tb1
UNION ALL
SELECT tb2_id, tb2_type, tb2_weight, tb2_price
FROM tb2
UNION ALL
SELECT tb3_id, tb3_type, tb3_count, tb3_price
FROM tb3
(21-01-18, 03:31 PM)محمود صالح كتب : [ -> ]اتفضل اخي 
جعل الاسماء او غير ذلك تحت بعض من جداول مختلفة

PHP كود :
SELECT TB1_TYPE FROM TB1 UNION SELECT TB2_TYPE FROM TB2 UNION SELECT TB3_TYPE FROM TB3 

طيب دة في حالة عمود واحد لو عمودين زي حالتي هذة كيف يكود كود الاستعلام دة الكود كامل لضم عمود الاول فقط


كود :
Dim cmd As OleDbCommand = New OleDbCommand("SELECT tb1_type FROM tb1 UNION SELECT tb2_type FROM tb2 UNION SELECT tb3_name FROM tb3", con)
       con.Open()
       DataAdapter1 = New OleDbDataAdapter(cmd)
       Dim builder As OleDbCommandBuilder = New OleDbCommandBuilder(DataAdapter1)
       DataSet1 = New DataSet()
       DataAdapter1.Fill(DataSet1, "tb1,tb2,tb3")
       DataGridView1.DataSource = DataSet1
       DataGridView1.DataMember = "tb1,tb2,tb3"
       con.Close()

(21-01-18, 03:41 PM)عبدالله الدوسري كتب : [ -> ]SELECT tb1_id, tb1_type, tb1_mount, tb1_price
FROM tb1
UNION ALL
SELECT tb2_id, tb2_type, tb2_weight, tb2_price
FROM tb2
UNION ALL
SELECT tb3_id, tb3_type, tb3_count, tb3_price
FROM tb3

جزاك اللّة خيرا

الحمد للّةتم الوصول للمطلوب بالكود التالي

الكود كامل لعل احد غيري يستفيد منة


كود :
Dim cmd As OleDbCommand = New OleDbCommand("SELECT tb1_type ,tb1_price FROM tb1 UNION SELECT tb2_type,tb2_price FROM tb2 UNION SELECT tb3_name,tb3_price FROM tb3", con)
       con.Open()
       DataAdapter1 = New OleDbDataAdapter(cmd)
       Dim builder As OleDbCommandBuilder = New OleDbCommandBuilder(DataAdapter1)
       DataSet1 = New DataSet()
       DataAdapter1.Fill(DataSet1, "tb1,tb2,tb3")
       DataGridView1.DataSource = DataSet1
       DataGridView1.DataMember = "tb1,tb2,tb3"
       con.Close()
جواب عليك اخي [b]عبدالله الدوسري [/b]
في الاعلى
وفقكم اللّة جميعا لكل خير وزادكم من علمة وفضلة

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

انا حاولت بالطريقة دية ولكن لاشيء


كود :
 On Error Resume Next
       If IsNumeric(TextBox1.Text) = False Then

           Dim DataAdapter As New OleDbDataAdapter("SELECT tb1_type ,tb1_price FROM tb1 UNION SELECT tb2_type,tb2_price FROM tb2 UNION SELECT tb3_name,tb3_price FROM tb3 WHERE tb1_type  LIKE '%" & Trim$(TextBox1.Text) & "%' or tb2_type like '%" & Trim$(TextBox1.Text) & "%'", con)
           con.Open()

           DataSet1.Clear()

           DataAdapter.Fill(DataSet1, "tb1,tb2,tb3")

           If Me.BindingContext(DataSet1, "tb1,tb2,tb3").Count = 0 Then
               DataSet1.Clear()
               DataAdapter1.Fill(DataSet1, "tb1,tb2,tb3")
               con.Close()
               count()

               MsgBox("لم يتم العثور على شيء", 48 + MsgBoxStyle.MsgBoxRight, "البحث") : Exit Sub
           Else
               DataSet1.Clear()
               DataAdapter.Fill(DataSet1, "tb1,tb2,tb3")
               con.Close()
               count()

               Exit Sub

           End If
       End If
اتفضل اخي ضع كل شرط امام جداوله

PHP كود :
       Dim DataAdapter As New OleDbDataAdapter("SELECT tb1_type ,tb1_price FROM tb1 WHERE tb1_type  LIKE '%" Trim$(TextBox1.Text) & "%' UNION SELECT tb2_type,tb2_price FROM tb2 WHERE tb2_type like '%" Trim$(TextBox1.Text) & "%' UNION SELECT tb3_name,tb3_price FROM tb3"con
كود كامل بعد التعديل
PHP كود :
On Error Resume Next
       
If IsNumeric(TextBox1.Text) = False Then

        Dim DataAdapter 
As New OleDbDataAdapter("SELECT tb1_type ,tb1_price FROM tb1 WHERE tb1_type  LIKE '%" Trim$(TextBox1.Text) & "%' UNION SELECT tb2_type,tb2_price FROM tb2 WHERE tb2_type like '%" Trim$(TextBox1.Text) & "%' UNION SELECT tb3_name,tb3_price FROM tb3"con)
 
          con.Open()

 
          DataSet1.Clear()

 
          DataAdapter.Fill(DataSet1"tb1,tb2,tb3")

 
          If Me.BindingContext(DataSet1"tb1,tb2,tb3").Count 0 Then
               DataSet1
.Clear()
 
              DataAdapter1.Fill(DataSet1"tb1,tb2,tb3")
 
              con.Close()
 
              count()

 
              MsgBox("لم يتم العثور على شيء"48 MsgBoxStyle.MsgBoxRight"البحث") : Exit Sub
           
Else
 
              DataSet1.Clear()
 
              DataAdapter.Fill(DataSet1"tb1,tb2,tb3")
 
              con.Close()
 
              count()

 
              Exit Sub

           End 
If
 
      End If 
الصفحات : 1 2