当前位置:编程学习 > C#/ASP.NET >>

求指教

public bool search(string sql)
        {
            conn.Open();
            cmd = new SqlCommand(sql, conn);
            if (cmd.ExecuteNonQuery() == 1)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
str = "select * from employees where EID='" + textBox2.Text.Trim() + "' ";
if(search(str))
                {
                    
                    MessageBox.Show("员工号已存在,请重新录入");
                    conn.Close();
                }
在这个If语句中调用上面的search()方法,为什么在员工号已经存在的情况下也没有返回结果呢?求指教啊! --------------------编程问答-------------------- 断点.调试. --------------------编程问答-------------------- select 不是 ExecuteNonQuery
--------------------编程问答-------------------- private static void CreateCommand(string queryString,
    string connectionString)
{
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        connection.Open();

        SqlCommand command = new SqlCommand(queryString, connection);
        SqlDataReader reader = command.ExecuteReader();
        while (reader.Read())
        {
            Console.WriteLine(String.Format("{0}", reader[0]));
        }
    }
}


用这样的。。。 --------------------编程问答-------------------- 没有trycatch,估计程序已经有异常了,而你没catch到。
把SQL贴到数据库里跑一下,看看到底有没有结果。 --------------------编程问答-------------------- 单步调试了,对于存在的员工号返回的是false --------------------编程问答-------------------- 因为不是一次用到这样的语句,想着写一个方法会比较简单一些
--------------------编程问答-------------------- 那应该怎么修改以查看是否已经存在此员工信息啊!  --------------------编程问答-------------------- public bool search(string sql)
        {
            conn.Open();
            cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();
        if(reader.Read())
        {
            return true;
        }
            else
            {
                return false;
            }
        } --------------------编程问答-------------------- str = "select Count(*)...  --------------------编程问答-------------------- 对于insert,update,delete操作使用ExecuteNonQuery,查询使用ExecuteQuery。
并且,如果之判断是否存在,使用select count(*)  就可以了
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,