什么是正确的连接查询? [英] What is correct join query?
本文介绍了什么是正确的连接查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我做了理疗管理系统,我有两张表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屋!
查看全文