小弟编写了以下代码:
public string CH(string usename,string pwd,string rights)
{
// string connStr;
// connStr = "Server=(local);database=dbTest;uid=sa;pwd= ' '; ";
// cnn = new SqlConnection(connStr);
if(cnn.State==0)
cnn.Open();
cmm.Parameters[ "@useid "].Value = usename;
cmm.Parameters[ "@pwd "].Value = pwd ;
cmm.Parameters[ "@rights "].Value = rights ;
cmm.ExecuteNonQuery();
string pasd=cmm.Parameters[ "@pass "].Value.ToString();
cnn.Close();
return(pasd);
}
-------------------------------------------------------
结果报错为:
cmm.ExecuteNonQuery();
System.InvalidOperationException: ExecuteReader 需要打开的并且可用的连接。该连接的当前状态是 Closed。
-------------------------
似乎以上代码已经连接上数据库了啊,为什么会报这个错误呢,用注释掉的那段代码也不行!请大虾赐教!!!!!
------解决方案--------------------
少了 cmm.Connection = cnn?
还有,使用
if(cnn.State==ConnectionState.Closed)
------解决方案--------------------
少
cmm = cnn.creatCommand();
------解决方案--------------------
在cnn.Open();的时候加入一个判断
有可能是上面什么地方使用了你没有关闭
去掉if(cnn.State==0)
------解决方案--------------------
cmm.Connection = cnn,没有这个哦。按saucer(思归) 来吧
------解决方案--------------------
少了 cmm.Connection = cnn
------解决方案--------------------
在你的方法体内没有Connection对象cnn,而且cmm也见和cnn有什么关系