Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何删除SQL中的重复输出?_C#_Mysql - Fatal编程技术网

C# 如何删除SQL中的重复输出?

C# 如何删除SQL中的重复输出?,c#,mysql,C#,Mysql,我有一个组合框的问题,它的项目被复制。我怎样才能避免这种情况?以下是一些图片: 下面是我用来填充它的代码示例: string SelectQuery = "SELECT Part , Model FROM ctautoparts.nissanpart , ctautoparts.nissan ;"; MySqlConnection sqlConn = new MySqlConnection(myConnectionString); MySqlCommand cmdDatabase =

我有一个组合框的问题,它的项目被复制。我怎样才能避免这种情况?以下是一些图片:

下面是我用来填充它的代码示例:

string SelectQuery = "SELECT   Part , Model  FROM ctautoparts.nissanpart , ctautoparts.nissan   ;";

MySqlConnection sqlConn = new MySqlConnection(myConnectionString);
MySqlCommand cmdDatabase = new MySqlCommand(SelectQuery, sqlConn);
MySqlDataReader myReader;

try
{
    sqlConn.Open();
    myReader = cmdDatabase.ExecuteReader();
    // int model = myReader.GetOrdinal("model");
    //int model1 = myReader.GetOrdinal("part");
    while (myReader.Read())
    {

    //  string namethestore = myReader.IsDBNull(model)
    //   ? string.Empty
    //  : myReader.GetString("model");

    //   this.carmodel.Text = namethestore;

    //  string namethestore1 = myReader.IsDBNull(model)
    //  ? string.Empty
    // : myReader.GetString("parts");

    ///  this.carpart.Text = namethestore1;
    carmodel.Items.Add(myReader["Model"].ToString());

    carpart.Items.Add(myReader["Part"].ToString());

    }
}
catch (Exception msg)
{
    MessageBox.Show(msg.Message);
}

将distinct添加到select查询中,以便删除重复项

看起来您的查询返回的是重复的行。我建议将它们分开执行:

try
{
    // POPULATE MODELS
    string modelsQuery = "SELECT Model FROM ctautoparts.nissan;";
    using (MySqlConnection sqlConn = new MySqlConnection(myConnectionString))
    {
        using (MySqlCommand cmdDatabase = new MySqlCommand(modelsQuery, sqlConn))
        {
            sqlConn.Open();
            MySqlDataReader myReader = cmdDatabase.ExecuteReader();
            // int model = myReader.GetOrdinal("model");
            //int model1 = myReader.GetOrdinal("part");
            while (myReader.Read())
            {
                carmodel.Items.Add(myReader["Model"].ToString());
            }
        }
    }


    // POPULATE PARTS
    string partsQuery = "SELECT Part FROM ctautoparts.nissanpart;";
    using (MySqlConnection sqlConn = new MySqlConnection(myConnectionString))
    {
        using (MySqlCommand cmdDatabase = new MySqlCommand(partsQuery, sqlConn))
        {
            sqlConn.Open();
            MySqlDataReader myReader = cmdDatabase.ExecuteReader();
            // int model = myReader.GetOrdinal("model");
            //int model1 = myReader.GetOrdinal("part");
            while (myReader.Read())
            {
                carpart.Items.Add(myReader["Part"].ToString());
            }
        }
    }
}
catch (Exception msg)
{
    MessageBox.Show(msg.Message);
}

它仍然重复您如何确定问题是查询?如果OP多次调用那个函数呢?你说的OP是什么意思?对不起,我new@SigbinPInos原始海报,。我如何停止多次呼叫他们?string SelectQuery=选择部件,型号来自ctautoparts.nissanpart,ctautoparts.nissan@我编辑了我的答案,我没有看到你的问题。执行两个查询比只执行一个查询更好、更简单,因为您甚至没有进行内部连接。这意味着什么?严重性代码说明项目文件行错误CS0246找不到类型或命名空间名称“SqlDataReader”是否缺少using指令或程序集引用?CTAUTOPARTS c:\users\kevin\documents\visual studio 2015\Projects\CTAUTOPARTS\CTAUTOPARTS\AddInventory.cs145@SigbinPInos我忘了你在用MySQL。我编辑了我的答案,只需将所有SqlConnection、SqlCommand和SqlDataReader分别更改为MySqlConnection、MySqlCommand和MySqlDataReader.BRO!非常感谢你!当您从本机mysql提示符运行查询时,是否会得到重复的结果?