سؤال

أحاول القراءة من طاولتين في MySQL:

Dim sqlcom As MySqlCommand = New MySqlCommand("Select * from  mother, father where IDNO= '" & TextBox14.Text & "' ", sqlcon)

-لكنني أحصل على هذا الخطأ:

Column 'IDNO' in where clause is ambiguous

هذا هو الرمز بأكمله:

Dim NoAcc As String
        Dim NoAccmod2 As String
        Dim NoPas As String

        Dim sqlcon As New MySqlConnection("Server=localhost; Database=school;Uid=root;Pwd=nitoryolai123$%^;")
        Dim sqlcom As MySqlCommand = New MySqlCommand("Select * from  mother, father where IDNO= '" & TextBox14.Text & "' ", sqlcon)

        sqlcon.Open()


        Dim rdr As MySqlDataReader
        rdr = sqlcom.ExecuteReader


        If rdr.HasRows Then
            rdr.Read()
            NoAcc = rdr("IDNO")
            If (TextBox14.Text = NoAcc) Then TextBox7.Text = rdr("MOTHER")
            If (TextBox14.Text = NoAcc) Then TextBox8.Text = rdr("MOTHER_OCCUPATION")
            If (TextBox14.Text = NoAcc) Then TextBox10.Text = rdr("FATHER")
            If (TextBox14.Text = NoAcc) Then TextBox11.Text = rdr("FATHER_OCCUPATION")
        End If

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

هذا هو winform ، وليس نموذج ويب

هل كانت مفيدة؟

المحلول

جرب هذا في أمرك:

Dim sqlcom As MySqlCommand = New MySqlCommand("Select * from  mother, father where mother.IDNO= '" & TextBox14.Text & "' AND father.IDNO = '" & TextBox14.Text  & "'", sqlcon)

نصائح أخرى

دون رؤية مخطط الجداول الخاصة بك لا أستطيع أن أقول بالتأكيد ، لكنني أعتقد أن أعمدة الهوية الخاصة بك تسميت على نفس المنوال في كلا الجدولين. للتغلب على ذلك ، ستحتاج إلى تأهيل تمامًا الشخص الذي تبحث عنه ، باستخدام mother.idno أو الأب.

if (textbox14.text = noacc) ثم textbox7.text = rdr ("الأم")

if (textbox14.text = noacc) ثم textbox8.text = rdr ("mother_occupation")

if (textbox14.text = noacc) ثم textbox10.text = rdr ("الأب")

if (textbox14.text = noAcc) ثم textbox11.text = rdr ("الأب_

تبدو زائدة عن الحاجة/غير فعالة أليس كذلك؟

كما يمكنك محاولة استخدام انضمام داخلي بدلاً من IDNO المزدوج "حيث" S

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top