菜鸟问null==cmd.ExecuteScalar

来源:百度知道 编辑:UC知道 时间:2024/07/04 10:18:18
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "" || comboBox1.Text.Trim() == "")
MessageBox.Show("请填写完整信息", "提示");
else
{
if (textBox2.Text.Trim() != textBox3.Text.Trim())
MessageBox.Show("两次输入的密码不一致","提示");
else
{
connection1.Open();
OleDbCommand cmd = new OleDbCommand("",connection1);
cmd.CommandText = "select * from userinfo where name = '" + textBox1.Text.Trim() + "'";
if (null==cmd.ExecuteScalar())//????????
{
string sql = "insert into userin

cmd.CommandText = "select * from userinfo where name = '" + textBox1.Text.Trim() + "'"; //这是SQL语句
if (null==cmd.ExecuteScalar())
//这判断查询出来的数据是否为空,就是判断是否已经存在你现在想要插入的数据,如果不存在则插入
{
string sql = "insert into userinfo (name,passwd,rolename) values ('" + textBox1.Text.Trim() + "','" + textBox2.Text.Trim() + "','" + comboBox1.Text.Trim() + "')";
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
MessageBox.Show("新用户添加成功","提示");
}

就是判断你这条语句:select * from userinfo where name = '" + textBox1.Text.Trim() + "'

如果没有数据.即:cmd.ExecuteScalar()==null.则注册.
如果有数据.就说明用户已存在..

一般不写成null==cmd.ExecuteScalar()
而写成:cmd.ExecuteScalar()==null