command用法

一、SqlCommand常见的属性:SqlCommand属性为执行命令作准备。

1、 CommandText属性:执行的SQL语句;
2、 Connection属性:连接数据库SqlConnection对象;
3、 CommandType属性:解析CommandText的值;
            SqlCommand cmd = new SqlCommand("login", conn);
     cmd.CommandType = CommandType.StoredProcedure; // 这里采用存储过程
4、 CommandTimeout属性:设置需要执行多久停止;
5、 Parameters属性:设置参数;
二、SqlCommand类构造函数
             SqlCommand myCommand = new SqlCommand(sqlupdate, conn);
三、SqlCommand常见的方法: SqlCommand方法主要执行SQL语句。
1、 ExecuteReader()方法:主要执行select语句。将结果返回到 SqlDataReader对象
例:
        SqlCommand myconn = new SqlCommand("select * from v_economy2_comidd where eid=" + Request.QueryString["eid"] + "", conn);
        conn.Open();
        SqlDataReader rd = myconn.ExecuteReader();
        rd.Read();
        Lbyear1.Text = rd["year1"].ToString();
        Lbmonth1.Text = rd["month1"].ToString();
        Lbcom_name.Text = rd["com_name"].ToString();
        rd.Close();
        conn.Close();
 
或者:
      while(rd.Read())
      {
       
       }
 
2、 ExecuteNonQuery()方法:主要执行Insert、Update、Delete语句。返回值为该命令所影响的行数。
例:
    protected void Button1_Click(object sender, EventArgs e)
    {
        string class_name = TextBox1.Text;
        string pwd = PwdMd5.md5l("111");
        SqlCommand myconn = new SqlCommand("insert into UserAdmin(UserName,UserPwd,UserLevel,tim,num)values('" + class_name + "','" + pwd + "','U',@tim,1)", conn);
        myconn.Parameters.Add(new SqlParameter("@tim", SqlDbType.DateTime, 8));
        myconn.Parameters["@tim"].Value = DateTime.Now.ToString();   // 显示详细的日期和时间
        conn.Open();
        myconn.ExecuteNonQuery();
        conn.Close();
        Response.Write("<script   language='javascript'>alert(' 添加管理员成功!初始密码为123456');location='AdUserMag.aspx'</script>" );
}
    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        string sqlUpdate = "update UserAdmin set UserPwd=@UserPwd Where UserId='" + int.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString().Trim()) + "'";
        SqlCommand MyConn = new SqlCommand(sqlUpdate, conn);
        MyConn.Parameters.Add(new SqlParameter("@UserPwd", SqlDbType.VarChar, 500));
        MyConn.Parameters["@UserPwd"].Value = PwdMd5.md5l("111");
        conn.Open();
        MyConn.ExecuteNonQuery();
        conn.Close();
        Response.Write("<script   language='javascript'>alert(' 还原密码成功!!还原密码为111');location='AdUserMag.aspx'</script>" );
    }
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        string sqldel = "delete from UserAdmin where UserId=" + int.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString().Trim());
        SqlCommand myconn = new SqlCommand(sqldel, conn);
        conn.Open();
        myconn.ExecuteNonQuery();
        //lbsql.Text = "<b> 已删除记录</b><br>" + sqldel;
        conn.Close();
        BindGrid();
    }
3、 ExecuteScalar()方法:返回获得的聚合值(共有多少行数据)。
 
       string strSql;
       strSql="select name from user;
       sqlCommand comm =new sqlCommand(strSql,conn);
       object so=comm.ExecuteScalar();
      
       Response.write(so.ToString());
 
     
4、 ExecuteXmlReader()方法

`validatecommand`是`tkinter`中部件的一个选项,用于指定在输入内容发生变化时要执行的验证函数。它可以用于验证用户输入的有效性,例如检查输入是否符合一定的格式或范围。下面是`validatecommand`的用法示例: ```python import tkinter as tk def validate_input(new_value): # 在此处编写验证逻辑 # 返回 True 表示输入有效,返回 False 表示输入无效 if new_value.isdigit() and int(new_value) > 0: return True else: return False root = tk.Tk() # 创建一个 Entry 部件,并使用 validatecommand 选项指定验证函数 entry = tk.Entry(root, validate="key", validatecommand=(root.register(validate_input), '%P')) entry.pack() root.mainloop() ``` 在上述代码中,我们首先创建了一个名为`validate_input`的函数,该函数用于验证用户输入的有效性。在这个例子中,我们简单地检查输入是否为正整数。 然后,我们创建了一个`Entry`部件,并使用`validatecommand`选项指定验证函数。`validatecommand`选项需要一个元组作为参数,其中第一个元素是注册的验证函数(使用`root.register()`方法进行注册),第二个元素`'%P'`表示传递给验证函数的参数,即最新的输入内容。 在这个例子中,我们使用了`validate="key"`选项来指定验证方式为按键事件触发。也可以使用其他验证模式,例如`"focusout"`(焦点离开时触发验证)或`"focus"`(获取焦点时触发验证)。 当用户输入内容时,每次按键后都会调用`validate_input`函数进行验证。如果验证函数返回`True`,则输入被认为是有效的;如果返回`False`,则输入被认为是无效的,并且不会更新部件的值。 请注意,在实际应用中,您可以根据需要编写更复杂的验证逻辑,并根据验证结果采取相应的操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值