DataReader用法

ASP.NET 数据操作与文件处理
本文介绍如何使用 ASP.NET 进行数据库操作,包括连接数据库、读取数据、动态添加按钮及处理按钮点击事件等。同时,还介绍了如何通过 FileUpload 控件上传文件,并利用 FileStream 和 StreamReader 实现文件的读取。
 

(1)SqlConnection连接数据库
(2)读取数据放到table中
   SqlDataReader reader = sqlcmm.ExecuteReader();
   object[] values=new object[reader.FieldCount];//获取行中的列数
   reader.Read();
   reader.GetValues(values);//将读到的数据填充到数组中
(3)将数据绑定到表中
   TableRow row = new TableRow();
   TableCell cell = new TableCell();

   cell.Text = values[0].ToString();

   row.Cells.Add(cell);
   Table1.Rows.Add(row);
(4)动态添加按钮
   cell = new TableCell();

   Button btn1 = new Button();
   btn1.Text = "编辑";
   cell.Controls.Add(btn1);

   row.Cells.Add(cell);
(5)动态Button事件:Click/command
 Button btn2 = new Button();
 btn2.Text = "删除";
 btn2.Command+=new CommandEventHandler(btn1_Command);//CommandEventHandler是一个委托,当单击按钮时,委托就会调用btn1_Command方法
 btn2.CommandName = "delete";//用于判断要删除,还是编辑。
 btn2.CommandArgument = values[0].ToString();//判断要删除哪一行
 btn2.OnClientClick = "return confirm('要删除--"+ values[1].ToString()+"--吗?');"; //当单击删除时,就会跳出 
 

  1、删除数据:
     (1)连接数据库
     (2)写Sql语句
sqlcmm.CommandText = "delete from users where uid=@id ";
sqlcmm.Parameters.Add(new SqlParameter("@id", uid));
     (3)bool DeleteUser(){}


                              10-10
Using(SqlConnection sqlcnn = new SqlConnection(str))
      {
        sqlcnn.Open();
        会自动关数据库连接;
      }
1.向数据库中加数据SqlParameter
sqlcmm.CommandText = "insert into users(uid,name,power)values     (@uid,@name,@power)";

SqlParameter param = new SqlParameter("@uid", System.Data.SqlDbType.NVarChar, 6);
param.Value = this.txtNo.Text;
sqlcmm.Parameters.Add(param);

sqlcnn.Open();
sqlcmm.ExecuteNonQuery();//必须有
Response.Write("OK");

2.文件流FileStream上传并读取数据StreamReader、ReadLine()
 string strfile = Server.MapPath("~/") + "abc1.txt";
 this.FileUsers.SaveAs(strfile);//FileUsers是fileUpload上传控件
 FileStream fs = new FileStream(strfile, FileMode.Open);//流对象对文件进行管理
 StreamReader sr = new StreamReader(fs);//读取文件
 string line = sr.ReadLine();
 while (line != null)
 {
     Response.Write(line + "<br/>");
     line = sr.ReadLine();
 }
 sr.Close();
 fs.Close();
 fs.Dispose();

3.拆分字符串Split
string[] items = "2003;盖茨;检票员";
items = line.Split(';');//用;隔开,拆分成多个字符串

4.上传路径
string strfile = Server.MapPath("~/") + "abc1.txt";
this.FileUsers.SaveAs(strfile);//FileUsers是fileUpload上传控件

5.SqlTransaction事物
 sqlcmm.ExecuteNonQuery();//要重复使用,一旦出错,需回滚,用到SqlTransaction

 SqlTransaction trans = sqlcnn.BeginTransaction();//创建事物对象
 sqlcmm.Transaction = trans;//为命令对象指定事物对象

 try
 {
    while()

   {

   }  

  trans.Commit();  //while中语句没错,才执行,提交事物
 }
 catch
 {
    trans.Rollback();  //回滚事物,try中出错时执行
  
    Response.Write("Error");
    return;
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值