SQL C#检查是否退出



我有一个关于所有部分(tblpart(的概述(dataGridView(。

如果我想要零件的更多信息,我双击该行。对于材料零件,我有另一个包含特殊材料数据的表(tblpart_material(。

但并不是所有的材料零件都在这张表中列出。

如何检查tblpart_material中是否存在零件号?

我尝试了以下代码,但不正确

SELECT p.number  
WHERE EXISTS (SELECT 1
FROM tblpart p
LEFT JOIN tblpart_material m ON p.number = m.number
WHERE m.Number = 'MAT100007')

如何将其放入我的代码中?

我的意思是,如果我有一个数据,它会返回一个对象。

那么,如果该值不存在,它是null吗?我可以用以下代码处理这个问题吗?

public Material GetMaterialByNumber(string Number)
{
using (IDbConnection db = new MySqlConnection(AppConnection.ConnectionString))
{
string query = @" ...";
if (db.State == ConnectionState.Closed)
db.Open();
return db.QuerySingle<Material>(q, new { Number });
}
}

谢谢!

试试这个,把你的表放在table_name 中

public Material GetMaterialByNumber(string number)
{
using (IDbConnection db = new MySqlConnection(AppConnection.ConnectionString))
{
string query = @"SELECT p1.number FROM table_name p1
WHERE EXISTS (SELECT 1
FROM tblpart p
LEFT JOIN tblpart_material m ON p.number = m.number
WHERE m.Number =  @Number )";
if (db.State == ConnectionState.Closed)
db.Open();
return db.QuerySingle<Material>(query, new { Number = number });
}
}

最新更新