小编Y.P*_*let的帖子

c#MySqlCommand.ExecuteNonQuery()返回-1

我正在尝试在C#中执行SQL请求,以了解用户是否已在我的数据库中注册.为此,我使用以下源代码:

    public bool pseudoDispo(string pseudo)
    {
        // Ouverture de la connexion SQL
        this.OpenConnection();

        // Création d'une commande SQL en fonction de l'objet connection
        MySqlCommand cmd = this.connection.CreateCommand();
        cmd.CommandText = "SELECT COUNT(*) FROM `user` WHERE `pseudo` = '" + pseudo + "'";

        int test = cmd.ExecuteNonQuery();
        MessageBox.Show(test.ToString());

        // Exécution de la commande SQL
        if (cmd.ExecuteNonQuery() == 1)
        {
            this.connection.Close();
            MessageBox.Show("Registered");
            return true;
        }
        else
        {
            this.connection.Close();
            MessageBox.Show("Not Registered");
            return false;
        }
    }
Run Code Online (Sandbox Code Playgroud)

但问题是MySqlCommand.ExecuteNonQuery()总是返回-1而我不知道为什么.我的请求似乎有效,因为它在phpmyadmin上返回了我的好结果(如果已注册,则返回1,如果没有则返回0).

有人帮我解释一下,我做错了吗?

谢谢!

编辑:我一直试图通过使用ExecuteScalar()以另一种方式完成我的功能,但现在我遇到了一些麻烦,因为它总是让我回归0.我显然不明白,但我甚至不知道是什么......我可以获得有关ExecuteScalar()和那种函数的更多信息吗?我试图将它转换为字符串,似乎cmd请求Int64.所以我更新了我的代码,但它仍然无效.我对自己缺乏知识感到非常沮丧,但无论如何,这是代码:

    public …
Run Code Online (Sandbox Code Playgroud)

c# mysql insert executenonquery

1
推荐指数
1
解决办法
4789
查看次数

标签 统计

c# ×1

executenonquery ×1

insert ×1

mysql ×1