什么是正确的连接查询? [英] What is correct join query?

查看:58
本文介绍了什么是正确的连接查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我做了理疗管理系统,我有两张表patient_mstr和old_patient。我将contact_no作为主键和外键。我想搜索联系人号码并显示表格中的特定字段记录。代码如下。



我尝试过:



i made physiotherapy management system and i have two tables patient_mstr and old_patient. i give contact_no as primary key and foreign key. i want to search contact no and display particular fields records from table. the code as given below.

What I have tried:

private void txtscrcno_KeyDown(object sender, KeyEventArgs e)
        {
            try
            {
                if (e.KeyCode == Keys.Enter)
                {
                    OleDbCommand cmd = new OleDbCommand("select patient_mstr.Sr_no,patient_mstr.P_name,patient_mstr.M_name,patient_mstr.L_name,old_patient.E_date,patient_mstr.Address,old_patient.Pain,old_patient.Total_charge,old_patient.Total_paid from patient_mstr join on old_patient where patient_mstr.Contact_no=old_patient.Contact_no and Contact_no=@Contact_no", cn);
                    cmd.Parameters.Add(new OleDbParameter("@Contact_no", txtscrcno.Text));
                    cn.Open();
                    if (cmd.ExecuteNonQuery() > 1)
                    {
                        //OleDbDataAdapter da = new OleDbDataAdapter(cmd);
                        OleDbDataAdapter da = new OleDbDataAdapter(cmd);
                        DataSet ds = new DataSet();
                        da.Fill(ds, "patient_mstr");
                        dgvinfo.DataSource = ds;
                        dgvinfo.DataMember = "patient_mstr";
                        cn.Close();
                    }
                    else
                    {
                        MessageBox.Show("There is no record found.","No record",MessageBoxButtons.OKCancel,MessageBoxIcon.Error);
                    }
                }
            }
            catch (Exception j)
            {
                MessageBox.Show(j.Message);
            }
        }

推荐答案

尝试以下内容 -

Try something like following-
select patient_mstr.Sr_no,patient_mstr.P_name,patient_mstr.M_name,patient_mstr.L_name,old_patient.E_date,patient_mstr.Address,old_patient.Pain,old_patient.Total_charge,old_patient.Total_paid 
from patient_mstr
left join old_patient on patient_mstr.Contact_no=old_patient.Contact_no 
where old_patient.Contact_no=@Contact_no





如果有,请告知我们。它没有帮助:)



Please let me know, if it doesn't help :)


你可以使用内部联接

You can use inner join
select patient_mstr.Sr_no,patient_mstr.P_name,patient_mstr.M_name,patient_mstr.L_name,old_patient.E_date,patient_mstr.Address,old_patient.Pain,old_patient.Total_charge,old_patient.Total_paid 
from patient_mstr p inner join old_patient op on p.Contact_no=op.Contact_no 
where p.Contact_no=@Contact_no



有关 INNER JOIN 的详细信息,请检查foll due-

SQL INNER JOIN关键字 [ ^ ]


For more details about INNER JOIN check following-
SQL INNER JOIN Keyword[^]


这篇关于什么是正确的连接查询?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆