如何检查用户是否将注册字段留空

How to check if user left register field empty

我有注册表。在这种情况下,它将只包含 USERNAME 和 PASSWORD。

当我在 SQL 服务器中创建 table 时,我将两列都设置为 NOT NULL 但是当我尝试在不输入用户名或密码的情况下进行注册时,没有任何错误并且我的表格 'registrates' 例如没有密码的新用户(如果我没有输入密码)。

这是我的代码,所以如果有人可以帮助我解决这个问题,并说明是否有其他 wrong/poorly 是用代码编写的,因为我是所有这些方面的新手。我认为我在 SQL 注入问题上做得很好,但你永远不知道。非常感谢您的回复。

private void button1_Click(object sender, EventArgs e)
    {

        SqlConnection cn = new SqlConnection("Data Source=HOME-PC;Initial Catalog=TestDB1;Integrated Security=True");

    try
    {
        cn.Open();
        String query = "INSERT INTO dbo.users (uUsername, uPassword) VALUES (@uUsername, @uPassword)";

        SqlCommand command = new SqlCommand(query, cn);
        command.Parameters.AddWithValue("@uUsername", textBox1.Text);
        command.Parameters.AddWithValue("@uPassword", textBox2.Text);

        command.ExecuteNonQuery();

        MessageBox.Show("OK");

        this.usersTableAdapter.Fill(this.testDB1DataSet.users);

    }
    catch (Exception ex)
    {
        MessageBox.Show("Error");
    }
    finally
    {
        cn.Close();
    }
    }

如果我没理解错的话,你有一个用 C# 编写的应用程序,它与 SQL 服务器后端交互。

您应该能够在 C# 代码中添加一个检查,以在您单击按钮时检查文本框是否为空。我的 C# 很生疏,但可以这样做:

if (string.IsNullOrWhiteSpace(textBox1.Text) || string.sNullOrWhiteSpace(textBox2.Text)) 
{
    messagebox.show("Invalid entry"); 
}

遗憾的是我没有 Visual Studio 检查这个,但我会在执行 SQL 之前检查文本框是否为空。

此外,我会将您的文本框名称更改为您会记住的名称,否则在维护代码时您会发现这是一场噩梦。