sql数据库中的using和ExecuteScalar()注意点

  int r = (int)cmd.ExecuteScalar();//注意Object类型需强制转换为int 

  1.当ExecuteScalar执行的是聚合函数的时候,返回的不可能是null,如果执行的sql语句不是聚合函数返回的有可能是null

  2.using相当于try.......finally,会自动调用dispose方法,所以连接对象打开后conn.open,不用再调用conn.colose

 


        private bool CheckUserInputOldPwd(string oldpwd, int autoid)
        {
            string sql = string.Format("select count(*) from UserLogin where autoid = '{0}' and loginpwd = '{1}'", autoid, oldpwd);//注意学会这种写法
            string constr = "Data Source = S7LVYWSI0SBPKLU;Initial Catalog = User;Integrated Security = True"; 
            using(SqlConnection con = new SqlConnection(constr))
            {
                using(SqlCommand cmd = new SqlCommand(sql,con))
	            {
		            con.Open();
                    int r = (int)cmd.ExecuteScalar();//注意Object类型需强制转换为int
                    return r>0;
	            }            
            }
           
        }
       

      

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值